| Index: src/ia32/lithium-codegen-ia32.cc
|
| diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc
|
| index 654c04d2b2bf570ca181669d69be74a710d6e43b..f316e850f8e7d676123995d833f36f3bd49e4bcf 100644
|
| --- a/src/ia32/lithium-codegen-ia32.cc
|
| +++ b/src/ia32/lithium-codegen-ia32.cc
|
| @@ -1399,36 +1399,6 @@ void LCodeGen::DoModI(LModI* instr) {
|
| __ bind(&left_is_not_negative);
|
| __ and_(left_reg, divisor - 1);
|
| __ bind(&done);
|
| -
|
| - } else if (hmod->fixed_right_arg().has_value) {
|
| - Register left_reg = ToRegister(instr->left());
|
| - ASSERT(left_reg.is(ToRegister(instr->result())));
|
| - Register right_reg = ToRegister(instr->right());
|
| -
|
| - int32_t divisor = hmod->fixed_right_arg().value;
|
| - ASSERT(IsPowerOf2(divisor));
|
| -
|
| - // Check if our assumption of a fixed right operand still holds.
|
| - __ cmp(right_reg, Immediate(divisor));
|
| - DeoptimizeIf(not_equal, instr->environment());
|
| -
|
| - Label left_is_not_negative, done;
|
| - if (left->CanBeNegative()) {
|
| - __ test(left_reg, Operand(left_reg));
|
| - __ j(not_sign, &left_is_not_negative, Label::kNear);
|
| - __ neg(left_reg);
|
| - __ and_(left_reg, divisor - 1);
|
| - __ neg(left_reg);
|
| - if (hmod->CheckFlag(HValue::kBailoutOnMinusZero)) {
|
| - DeoptimizeIf(zero, instr->environment());
|
| - }
|
| - __ jmp(&done, Label::kNear);
|
| - }
|
| -
|
| - __ bind(&left_is_not_negative);
|
| - __ and_(left_reg, divisor - 1);
|
| - __ bind(&done);
|
| -
|
| } else {
|
| Register left_reg = ToRegister(instr->left());
|
| ASSERT(left_reg.is(eax));
|
|
|