| Index: src/arm/stub-cache-arm.cc
|
| diff --git a/src/arm/stub-cache-arm.cc b/src/arm/stub-cache-arm.cc
|
| index 00ea079afe1ceedfb5cded0956c6d274c97536ca..875626766c39246e4f5998bf1ddca79e7e2fd9c7 100644
|
| --- a/src/arm/stub-cache-arm.cc
|
| +++ b/src/arm/stub-cache-arm.cc
|
| @@ -847,6 +847,7 @@ static void GenerateFastApiDirectCall(MacroAssembler* masm,
|
| Handle<JSFunction> function = optimization.constant_function();
|
| __ Move(r5, function);
|
| __ ldr(cp, FieldMemOperand(r5, JSFunction::kContextOffset));
|
| + __ LoadConstantPoolPointer(r5);
|
| __ str(r5, MemOperand(sp, FCA::kCalleeIndex * kPointerSize));
|
|
|
| // Construct the FunctionCallbackInfo.
|
| @@ -2762,6 +2763,7 @@ Handle<Code> CallStubCompiler::CompileCallGlobal(
|
|
|
| // Set up the context (function already in r1).
|
| __ ldr(cp, FieldMemOperand(r1, JSFunction::kContextOffset));
|
| + __ LoadConstantPoolPointer(r1);
|
|
|
| // Jump to the cached code (tail call).
|
| Counters* counters = isolate()->counters();
|
| @@ -2868,6 +2870,7 @@ void StoreStubCompiler::GenerateStoreViaSetter(
|
|
|
| // Restore context register.
|
| __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset));
|
| + __ RestoreConstantPoolPointer();
|
| }
|
| __ Ret();
|
| }
|
| @@ -3001,8 +3004,9 @@ void LoadStubCompiler::GenerateLoadViaGetter(MacroAssembler* masm,
|
| masm->isolate()->heap()->SetGetterStubDeoptPCOffset(masm->pc_offset());
|
| }
|
|
|
| - // Restore context register.
|
| + // Restore context and pointer pool register.
|
| __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset));
|
| + __ RestoreConstantPoolPointer();
|
| }
|
| __ Ret();
|
| }
|
|
|