Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1158)

Unified Diff: runtime/vm/flow_graph_compiler_x64.h

Issue 10453098: Move Throw and ReThrow to the location based code generation. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Move Branch as well, introduce base class for instruction with inputs Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | runtime/vm/flow_graph_compiler_x64.cc » ('j') | runtime/vm/intermediate_language.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_compiler_x64.h
diff --git a/runtime/vm/flow_graph_compiler_x64.h b/runtime/vm/flow_graph_compiler_x64.h
index 93cd028774b48ab016e12f8074ba88e9117c41e1..08c0c55c1be5f6ac509104b3ab741ab3a99db915 100644
--- a/runtime/vm/flow_graph_compiler_x64.h
+++ b/runtime/vm/flow_graph_compiler_x64.h
@@ -50,6 +50,25 @@ class FlowGraphCompiler : public FlowGraphVisitor {
Register reg1,
Register reg2);
+
+ void GenerateCallRuntime(intptr_t cid,
+ intptr_t token_index,
+ intptr_t try_index,
+ const RuntimeEntry& entry);
+
+ // Returns true if the next block after current in the current block order
+ // is the given block.
+ bool IsNextBlock(TargetEntryInstr* block_entry) const {
+ intptr_t current_index = reverse_index(current_block()->postorder_number());
+ return block_order_[current_index + 1] == block_entry;
+ }
srdjan 2012/05/31 16:00:53 I think we can move both of these implementations
+
+ // Returns assembler label associated with the given block entry.
+ Label* GetBlockLabel(TargetEntryInstr* block_entry) const {
+ intptr_t block_index = block_entry->postorder_number();
+ return &block_info_[block_index]->label;
+ }
+
private:
friend class DeoptimizationStub;
@@ -123,10 +142,6 @@ class FlowGraphCompiler : public FlowGraphVisitor {
intptr_t try_index,
const ExternalLabel* label,
PcDescriptors::Kind kind);
- void GenerateCallRuntime(intptr_t cid,
- intptr_t token_index,
- intptr_t try_index,
- const RuntimeEntry& entry);
void AddCurrentDescriptor(PcDescriptors::Kind kind,
intptr_t cid,
intptr_t token_index,
« no previous file with comments | « no previous file | runtime/vm/flow_graph_compiler_x64.cc » ('j') | runtime/vm/intermediate_language.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698