Index: src/compiler/jump-threading.cc |
diff --git a/src/compiler/jump-threading.cc b/src/compiler/jump-threading.cc |
index e5b4595960d4ec2db1086ebe6d715f876335087d..96fb5db532400b8569632b09ab71b5a6919bb90d 100644 |
--- a/src/compiler/jump-threading.cc |
+++ b/src/compiler/jump-threading.cc |
@@ -76,10 +76,10 @@ bool JumpThreading::ComputeForwarding(Zone* local_zone, |
RpoNumber fw = block->rpo_number(); |
for (int i = block->code_start(); i < block->code_end(); ++i) { |
Instruction* instr = code->InstructionAt(i); |
- if (instr->IsGapMoves() && GapInstruction::cast(instr)->IsRedundant()) { |
- // skip redundant gap moves. |
- TRACE(" nop gap\n"); |
- continue; |
+ if (!instr->AreMovesRedundant()) { |
+ // can't skip instructions with non redundant moves. |
+ TRACE(" parallel move\n"); |
+ fallthru = false; |
} else if (instr->IsSourcePosition()) { |
// skip source positions. |
TRACE(" src pos\n"); |