Index: src/arm64/builtins-arm64.cc |
diff --git a/src/arm64/builtins-arm64.cc b/src/arm64/builtins-arm64.cc |
index 85132a17a10f0c9f2f93b2695e62be4408221f0a..7223c653964fffcb91ac701fae203576764f5001 100644 |
--- a/src/arm64/builtins-arm64.cc |
+++ b/src/arm64/builtins-arm64.cc |
@@ -1108,6 +1108,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. |
+ __ LoadObject(lr, masm->isolate()->builtins()->InterpreterEntryTrampoline()); |
+ |
Generate_EnterBytecodeDispatch(masm); |
} |