Index: src/x64/lithium-x64.cc |
diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc |
index af57996bbea638e10da47be5b0d077e68d5df8c9..d73536e8629a019b8775104a6dc8430f95215188 100644 |
--- a/src/x64/lithium-x64.cc |
+++ b/src/x64/lithium-x64.cc |
@@ -1445,7 +1445,8 @@ LInstruction* LChunkBuilder::DoModByPowerOf2I(HMod* instr) { |
int32_t divisor = instr->right()->GetInteger32Constant(); |
LInstruction* result = DefineSameAsFirst(new(zone()) LModByPowerOf2I( |
dividend, divisor)); |
- if (instr->CheckFlag(HValue::kBailoutOnMinusZero)) { |
+ if (instr->CheckFlag(HValue::kLeftCanBeNegative) && |
+ instr->CheckFlag(HValue::kBailoutOnMinusZero)) { |
result = AssignEnvironment(result); |
} |
return result; |