| Index: src/full-codegen/mips/full-codegen-mips.cc
|
| diff --git a/src/full-codegen/mips/full-codegen-mips.cc b/src/full-codegen/mips/full-codegen-mips.cc
|
| index 17f847c682c0c56406a804c0ad9b58e51c987a00..c8ce20459069312542acdbb3ca94268baaa4d26a 100644
|
| --- a/src/full-codegen/mips/full-codegen-mips.cc
|
| +++ b/src/full-codegen/mips/full-codegen-mips.cc
|
| @@ -4044,18 +4044,18 @@
|
|
|
| VisitForAccumulatorValue(sub_expr);
|
| PrepareForBailoutBeforeSplit(expr, true, if_true, if_false);
|
| + __ mov(a0, result_register());
|
| if (expr->op() == Token::EQ_STRICT) {
|
| Heap::RootListIndex nil_value = nil == kNullValue ?
|
| Heap::kNullValueRootIndex :
|
| Heap::kUndefinedValueRootIndex;
|
| __ LoadRoot(a1, nil_value);
|
| + Split(eq, a0, Operand(a1), if_true, if_false, fall_through);
|
| + } else {
|
| + Handle<Code> ic = CompareNilICStub::GetUninitialized(isolate(), nil);
|
| + CallIC(ic, expr->CompareOperationFeedbackId());
|
| + __ LoadRoot(a1, Heap::kTrueValueRootIndex);
|
| Split(eq, v0, Operand(a1), if_true, if_false, fall_through);
|
| - } else {
|
| - __ JumpIfSmi(v0, if_false);
|
| - __ lw(v0, FieldMemOperand(v0, HeapObject::kMapOffset));
|
| - __ lbu(a1, FieldMemOperand(v0, Map::kBitFieldOffset));
|
| - __ And(a1, a1, Operand(1 << Map::kIsUndetectable));
|
| - Split(ne, a1, Operand(zero_reg), if_true, if_false, fall_through);
|
| }
|
| context()->Plug(if_true, if_false);
|
| }
|
|
|