Index: src/compiler/effect-control-linearizer.cc |
diff --git a/src/compiler/effect-control-linearizer.cc b/src/compiler/effect-control-linearizer.cc |
index 9e35e51955e908c026f0c2cda34b17cc9dd4fd08..aeb5926759fc7a45a1703965a5643ba215e66c79 100644 |
--- a/src/compiler/effect-control-linearizer.cc |
+++ b/src/compiler/effect-control-linearizer.cc |
@@ -276,8 +276,10 @@ void TryCloneBranch(Node* node, BasicBlock* block, Graph* graph, |
edge.UpdateTo((control == matcher.IfTrue()) ? phi_true : phi_false); |
} |
} |
- true_block_data->current_effect = phi_true; |
- false_block_data->current_effect = phi_false; |
+ if (phi->opcode() == IrOpcode::kEffectPhi) { |
+ true_block_data->current_effect = phi_true; |
+ false_block_data->current_effect = phi_false; |
+ } |
phi->Kill(); |
} |
// Fix up IfTrue and IfFalse and kill all dead nodes. |