Index: src/hydrogen-instructions.cc |
diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc |
index ccc3c182eadf51d008f5b5abec5a9b4cb22d0616..dc15532fa35f51f1e2ad4032786c86e4fb6ce035 100644 |
--- a/src/hydrogen-instructions.cc |
+++ b/src/hydrogen-instructions.cc |
@@ -366,7 +366,6 @@ const char* HValue::Mnemonic() const { |
void HValue::SetOperandAt(int index, HValue* value) { |
- ASSERT(value == NULL || !value->representation().IsNone()); |
RegisterUse(index, value); |
InternalSetOperandAt(index, value); |
} |
@@ -600,6 +599,8 @@ void HInstruction::Verify() { |
ASSERT(cur == other_operand); |
} |
} else { |
+ // If the following assert fires, you may have forgotten an |
+ // AddInstruction. |
ASSERT(other_block->Dominates(cur_block)); |
} |
} |
@@ -1637,6 +1638,13 @@ HValue* HChange::EnsureAndPropagateNotMinusZero(BitVector* visited) { |
} |
+HValue* HForceRepresentation::EnsureAndPropagateNotMinusZero( |
+ BitVector* visited) { |
+ visited->Add(id()); |
+ return value(); |
+} |
+ |
+ |
HValue* HMod::EnsureAndPropagateNotMinusZero(BitVector* visited) { |
visited->Add(id()); |
if (range() == NULL || range()->CanBeMinusZero()) { |