| Index: src/mips/code-stubs-mips.cc
|
| diff --git a/src/mips/code-stubs-mips.cc b/src/mips/code-stubs-mips.cc
|
| index 96f406fbd81fa2268140fc2cada81d4ccf2a12d0..289e6b810769568551ebf243adfbaa9b95def883 100644
|
| --- a/src/mips/code-stubs-mips.cc
|
| +++ b/src/mips/code-stubs-mips.cc
|
| @@ -4252,7 +4252,7 @@ void InstanceofStub::Generate(MacroAssembler* masm) {
|
| const Register inline_site = t5;
|
| const Register scratch = a2;
|
|
|
| - const int32_t kDeltaToLoadBoolResult = 4 * kPointerSize;
|
| + const int32_t kDeltaToLoadBoolResult = 5 * kPointerSize;
|
|
|
| Label slow, loop, is_instance, is_not_instance, not_js_object;
|
|
|
| @@ -4296,11 +4296,12 @@ void InstanceofStub::Generate(MacroAssembler* masm) {
|
| // Patch the (relocated) inlined map check.
|
|
|
| // The offset was stored in t0 safepoint slot.
|
| - // (See LCodeGen::DoDeferredLInstanceOfKnownGlobal)
|
| + // (See LCodeGen::DoDeferredLInstanceOfKnownGlobal).
|
| __ LoadFromSafepointRegisterSlot(scratch, t0);
|
| __ Subu(inline_site, ra, scratch);
|
| - // Patch the relocated value to map.
|
| - __ PatchRelocatedValue(inline_site, scratch, map);
|
| + // Get the map location in scratch and patch it.
|
| + __ GetRelocatedValue(inline_site, scratch, v1); // v1 used as scratch.
|
| + __ sw(map, FieldMemOperand(scratch, JSGlobalPropertyCell::kValueOffset));
|
| }
|
|
|
| // Register mapping: a3 is object map and t0 is function prototype.
|
|
|