Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index 875b631595d3893e3e168285c0158e1572c33aac..edd93f0748e0ca90e5f884542a9bf38399177875 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -857,9 +857,14 @@ class HInstruction: public HValue { |
void InsertBefore(HInstruction* next); |
void InsertAfter(HInstruction* previous); |
+ // The position is a write-once variable. |
int position() const { return position_; } |
bool has_position() const { return position_ != RelocInfo::kNoPosition; } |
- void set_position(int position) { position_ = position; } |
+ void set_position(int position) { |
+ ASSERT(!has_position()); |
+ ASSERT(position != RelocInfo::kNoPosition); |
+ position_ = position; |
+ } |
bool CanTruncateToInt32() const { return CheckFlag(kTruncatingToInt32); } |