| Index: src/crankshaft/mips/lithium-codegen-mips.cc
|
| diff --git a/src/crankshaft/mips/lithium-codegen-mips.cc b/src/crankshaft/mips/lithium-codegen-mips.cc
|
| index c14cebf6631a78b274e0acfbaec82f231593059f..4e3352076fe8eb60c162a5c7896effd4b66e935c 100644
|
| --- a/src/crankshaft/mips/lithium-codegen-mips.cc
|
| +++ b/src/crankshaft/mips/lithium-codegen-mips.cc
|
| @@ -5470,19 +5470,10 @@ void LCodeGen::DoOsrEntry(LOsrEntry* instr) {
|
| void LCodeGen::DoForInPrepareMap(LForInPrepareMap* instr) {
|
| Register result = ToRegister(instr->result());
|
| Register object = ToRegister(instr->object());
|
| - __ And(at, object, kSmiTagMask);
|
| - DeoptimizeIf(eq, instr, Deoptimizer::kSmi, at, Operand(zero_reg));
|
| -
|
| - STATIC_ASSERT(JS_PROXY_TYPE == FIRST_JS_RECEIVER_TYPE);
|
| - __ GetObjectType(object, a1, a1);
|
| - DeoptimizeIf(le, instr, Deoptimizer::kNotAJavaScriptObject, a1,
|
| - Operand(JS_PROXY_TYPE));
|
|
|
| Label use_cache, call_runtime;
|
| DCHECK(object.is(a0));
|
| - Register null_value = t1;
|
| - __ LoadRoot(null_value, Heap::kNullValueRootIndex);
|
| - __ CheckEnumCache(null_value, &call_runtime);
|
| + __ CheckEnumCache(&call_runtime);
|
|
|
| __ lw(result, FieldMemOperand(object, HeapObject::kMapOffset));
|
| __ Branch(&use_cache);
|
| @@ -5491,11 +5482,6 @@ void LCodeGen::DoForInPrepareMap(LForInPrepareMap* instr) {
|
| __ bind(&call_runtime);
|
| __ push(object);
|
| CallRuntime(Runtime::kGetPropertyNamesFast, instr);
|
| -
|
| - __ lw(a1, FieldMemOperand(v0, HeapObject::kMapOffset));
|
| - DCHECK(result.is(v0));
|
| - __ LoadRoot(at, Heap::kMetaMapRootIndex);
|
| - DeoptimizeIf(ne, instr, Deoptimizer::kWrongMap, a1, Operand(at));
|
| __ bind(&use_cache);
|
| }
|
|
|
|
|