Index: src/x64/builtins-x64.cc |
diff --git a/src/x64/builtins-x64.cc b/src/x64/builtins-x64.cc |
index 06fd59468dbc5b437538a0c0703e4a3384a786e7..ee4fdd6b5de96b7165545747a4542463e1a2f068 100644 |
--- a/src/x64/builtins-x64.cc |
+++ b/src/x64/builtins-x64.cc |
@@ -905,6 +905,12 @@ void Builtins::Generate_InterpreterNotifyLazyDeoptimized(MacroAssembler* masm) { |
void Builtins::Generate_InterpreterEnterExceptionHandler(MacroAssembler* masm) { |
+ // Set the address of the interpreter entry trampoline as a return address. |
+ // This simulates the initial call to bytecode handlers in interpreter entry |
+ // trampoline. The return will never actually be taken, but our stack walker |
+ // uses this address to determine whether a frame is interpreted. |
+ __ Push(masm->isolate()->builtins()->InterpreterEntryTrampoline()); |
+ |
Generate_EnterBytecodeDispatch(masm); |
} |