< prev index next >
src/cpu/arm/vm/templateTable_arm.cpp
Print this page
*** 2842,2851 ****
--- 2842,2859 ----
__ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::register_finalizer), R1);
__ bind(skip_register_finalizer);
}
+ // Explicitly reset last_sp, for handling special case in TemplateInterpreter::deopt_reexecute_entry
+ #if !defined(AARCH64) && defined(ASSERT)
+ if (state == vtos) {
+ __ mov(Rtemp, 0);
+ __ str(Rtemp, Address(FP, frame::interpreter_frame_last_sp_offset * wordSize));
+ }
+ #endif
+
// Narrow result if state is itos but result type is smaller.
// Need to narrow in the return bytecode rather than in generate_return_entry
// since compiled code callers expect the result to already be narrowed.
if (state == itos) {
__ narrow(R0_tos);
< prev index next >