Chromium Code Reviews| Index: src/hydrogen.h |
| diff --git a/src/hydrogen.h b/src/hydrogen.h |
| index 7e09505d7261c6710d24c2e5fd268316c37c5992..8a41f66c36539f819cf3f5f4effccedb5ee0cb92 100644 |
| --- a/src/hydrogen.h |
| +++ b/src/hydrogen.h |
| @@ -126,6 +126,7 @@ class HBasicBlock: public ZoneObject { |
| int PredecessorIndexOf(HBasicBlock* predecessor) const; |
| void AddSimulate(int ast_id) { AddInstruction(CreateSimulate(ast_id)); } |
| void AssignCommonDominator(HBasicBlock* other); |
| + void AssignLoopSuccessorDominators(); |
| void FinishExitWithDeoptimization(HDeoptimize::UseEnvironment has_uses) { |
| FinishExit(CreateDeoptimize(has_uses)); |
| @@ -149,6 +150,13 @@ class HBasicBlock: public ZoneObject { |
| bool IsDeoptimizing() const { return is_deoptimizing_; } |
| void MarkAsDeoptimizing() { is_deoptimizing_ = true; } |
| + bool IsLoopSuccessorDominator() const { |
| + return dominates_loop_successors_; |
| + } |
| + void MarkAsLoopSuccessorDominator() { |
|
fschneider
2012/02/02 14:59:50
Please add output to --trace-hydrogen so that you
danno
2012/02/06 16:54:57
Done.
|
| + dominates_loop_successors_ = true; |
| + } |
| + |
| inline Zone* zone(); |
| #ifdef DEBUG |
| @@ -182,6 +190,7 @@ class HBasicBlock: public ZoneObject { |
| HBasicBlock* parent_loop_header_; |
| bool is_inline_return_target_; |
| bool is_deoptimizing_; |
| + bool dominates_loop_successors_; |
| }; |