| Index: src/x64/builtins-x64.cc
|
| diff --git a/src/x64/builtins-x64.cc b/src/x64/builtins-x64.cc
|
| index 32a57398a62980fc357f3d490e4917b6b2752593..702e5313412899de11265e451646074a5c7e7145 100644
|
| --- a/src/x64/builtins-x64.cc
|
| +++ b/src/x64/builtins-x64.cc
|
| @@ -617,6 +617,10 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
|
| __ Push(rdi); // Callee's JS function.
|
| __ Push(rdx); // Callee's new target.
|
|
|
| + // Push dispatch table pointer.
|
| + __ Move(rax, ExternalReference::interpreter_dispatch_table_address(
|
| + masm->isolate()));
|
| + __ Push(rax);
|
| // Push zero for bytecode array offset.
|
| __ Push(Immediate(0));
|
|
|
| @@ -677,9 +681,8 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
|
| Immediate(InterpreterFrameConstants::kRegisterFilePointerFromFp));
|
| __ movp(kInterpreterBytecodeOffsetRegister,
|
| Immediate(BytecodeArray::kHeaderSize - kHeapObjectTag));
|
| - __ Move(
|
| - kInterpreterDispatchTableRegister,
|
| - ExternalReference::interpreter_dispatch_table_address(masm->isolate()));
|
| + __ movp(kInterpreterDispatchTableRegister,
|
| + Operand(rbp, InterpreterFrameConstants::kDispatchTableFromFp));
|
|
|
| // Dispatch to the first bytecode handler for the function.
|
| __ movzxbp(rbx, Operand(kInterpreterBytecodeArrayRegister,
|
|
|