Index: src/hydrogen.cc |
diff --git a/src/hydrogen.cc b/src/hydrogen.cc |
index ed21567e51b1a8f455fbf4bd0c00771808ce2273..62fa571bbcdcd2e29e687b5d2ffc4604979cbab8 100644 |
--- a/src/hydrogen.cc |
+++ b/src/hydrogen.cc |
@@ -4384,7 +4384,12 @@ void HGraph::RestoreActualValues() { |
instruction != NULL; |
instruction = instruction->next()) { |
if (instruction->ActualValue() != instruction) { |
- instruction->ReplaceAllUsesWith(instruction->ActualValue()); |
+ ASSERT(instruction->IsInformativeDefinition()); |
+ if (instruction->IsPurelyInformativeDefinition()) { |
+ instruction->DeleteAndReplaceWith(instruction->RedefinedOperand()); |
+ } else { |
+ instruction->ReplaceAllUsesWith(instruction->ActualValue()); |
+ } |
} |
} |
} |