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_; |
}; |