| Index: src/arm64/lithium-arm64.cc
|
| diff --git a/src/arm64/lithium-arm64.cc b/src/arm64/lithium-arm64.cc
|
| index ff224182601d97c4d883f286411a27e26aafe770..de54093074e6d5022aa732c45d551c8024c1c33a 100644
|
| --- a/src/arm64/lithium-arm64.cc
|
| +++ b/src/arm64/lithium-arm64.cc
|
| @@ -1856,7 +1856,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;
|
|
|