Index: runtime/vm/intermediate_language.h |
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h |
index 23af66fac10c51e340667bf61730d765f98254f9..c33e9ea364bdc03eceb25797e2105ee0d03d2768 100644 |
--- a/runtime/vm/intermediate_language.h |
+++ b/runtime/vm/intermediate_language.h |
@@ -1162,7 +1162,8 @@ class PhiInstr : public Definition { |
: block_(block), |
inputs_(num_inputs), |
is_alive_(false), |
- representation_(kTagged) { |
+ representation_(kTagged), |
+ reaching_defs_(NULL) { |
for (intptr_t i = 0; i < num_inputs; ++i) { |
inputs_.Add(NULL); |
} |
@@ -1223,6 +1224,14 @@ class PhiInstr : public Definition { |
virtual void InferRange(); |
+ BitVector* reaching_defs() const { |
+ return reaching_defs_; |
+ } |
+ |
+ void set_reaching_defs(BitVector* reaching_defs) { |
+ reaching_defs_ = reaching_defs; |
+ } |
+ |
private: |
friend class ConstantPropagator; // Direct access to inputs_. |
@@ -1231,6 +1240,8 @@ class PhiInstr : public Definition { |
bool is_alive_; |
Representation representation_; |
+ BitVector* reaching_defs_; |
+ |
DISALLOW_COPY_AND_ASSIGN(PhiInstr); |
}; |