Index: src/arm/code-stubs-arm.cc |
diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc |
index b933c4ac654c1e905357c773ff257cd901e0701f..f661ad80d8ef5290565d19feedd3d2eaf2a77203 100644 |
--- a/src/arm/code-stubs-arm.cc |
+++ b/src/arm/code-stubs-arm.cc |
@@ -1898,8 +1898,7 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) { |
// * function: r1 or at sp. |
// |
// An inlined call site may have been generated before calling this stub. |
-// In this case the offset to the inline site to patch is passed on the stack, |
-// in the safepoint slot for register r4. |
+// In this case the offset to the inline site to patch is passed in r5. |
// (See LCodeGen::DoInstanceOfKnownGlobal) |
void InstanceofStub::Generate(MacroAssembler* masm) { |
// Call site inlining and patching implies arguments in registers. |
@@ -1958,14 +1957,14 @@ void InstanceofStub::Generate(MacroAssembler* masm) { |
ASSERT(HasArgsInRegisters()); |
// Patch the (relocated) inlined map check. |
- // The offset was stored in r4 safepoint slot. |
- // (See LCodeGen::DoDeferredLInstanceOfKnownGlobal) |
- __ LoadFromSafepointRegisterSlot(scratch, r4); |
- __ sub(inline_site, lr, scratch); |
- // Get the map location in scratch and patch it. |
- __ GetRelocatedValueLocation(inline_site, scratch); |
- __ ldr(scratch, MemOperand(scratch)); |
- __ str(map, FieldMemOperand(scratch, Cell::kValueOffset)); |
+ // The offset was stored in r5 |
+ // (See LCodeGen::DoDeferredLInstanceOfKnownGlobal). |
+ const Register offset = r5; |
+ __ sub(inline_site, lr, offset); |
+ // Get the map location in r5 and patch it. |
+ __ GetRelocatedValueLocation(inline_site, offset); |
+ __ ldr(offset, MemOperand(offset)); |
+ __ str(map, FieldMemOperand(offset, Cell::kValueOffset)); |
} |
// Register mapping: r3 is object map and r4 is function prototype. |