Chromium Code Reviews| Index: src/hydrogen.h |
| =================================================================== |
| --- src/hydrogen.h (revision 8460) |
| +++ src/hydrogen.h (working copy) |
| @@ -498,6 +498,8 @@ |
| // the instruction as value. |
| virtual void ReturnInstruction(HInstruction* instr, int ast_id) = 0; |
| + virtual void ReturnControl(HControlInstruction* instr, int ast_id) = 0; |
|
Kevin Millikin (Chromium)
2011/06/30 13:31:05
Needs a comment in similar detail to ReturnValue a
|
| + |
| void set_for_typeof(bool for_typeof) { for_typeof_ = for_typeof; } |
| bool is_for_typeof() { return for_typeof_; } |
| @@ -532,6 +534,7 @@ |
| virtual void ReturnValue(HValue* value); |
| virtual void ReturnInstruction(HInstruction* instr, int ast_id); |
| + virtual void ReturnControl(HControlInstruction* instr, int ast_id); |
| }; |
| @@ -544,6 +547,7 @@ |
| virtual void ReturnValue(HValue* value); |
| virtual void ReturnInstruction(HInstruction* instr, int ast_id); |
| + virtual void ReturnControl(HControlInstruction* instr, int ast_id); |
| bool arguments_allowed() { return flag_ == ARGUMENTS_ALLOWED; } |
| @@ -566,6 +570,7 @@ |
| virtual void ReturnValue(HValue* value); |
| virtual void ReturnInstruction(HInstruction* instr, int ast_id); |
| + virtual void ReturnControl(HControlInstruction* instr, int ast_id); |
| static TestContext* cast(AstContext* context) { |
| ASSERT(context->IsTest()); |
| @@ -706,6 +711,10 @@ |
| void Bailout(const char* reason); |
| + HBasicBlock* CreateJoin(HBasicBlock* first, |
| + HBasicBlock* second, |
| + int join_id); |
| + |
| private: |
| // Type of a member function that generates inline code for a native function. |
| typedef void (HGraphBuilder::*InlineFunctionGenerator)(CallRuntime* call); |
| @@ -779,10 +788,6 @@ |
| HBasicBlock* loop_entry, |
| BreakAndContinueInfo* break_info); |
| - HBasicBlock* CreateJoin(HBasicBlock* first, |
| - HBasicBlock* second, |
| - int join_id); |
| - |
| // Create a back edge in the flow graph. body_exit is the predecessor |
| // block and loop_entry is the successor block. loop_successor is the |
| // block where control flow exits the loop normally (e.g., via failure of |