void InterpreterStubs::generate_interpreter_deoptimization_entry() { Segment seg(this, code_segment, "Interpreter deoptimization entry"); define_call_info(); bind("interpreter_deoptimization_entry"); restore_interpreter_state(); prefetch(0); dispatch(tos_on_stack); }
void InterpreterStubs::generate_interpreter_deoptimization_entry() { comment_section("Interpreter deoptimization entry"); entry("interpreter_deoptimization_entry"); // Define an interpreter call info. define_call_info(); comment("Restore bytecode and locals pointers"); movl(esi, Address(ebp, Constant(JavaFrame::bcp_store_offset()))); movl(edi, Address(ebp, Constant(JavaFrame::locals_pointer_offset()))); // Dispatch to the next bytecode. dispatch_next(); entry_end(); // interpreter_deoptimization_entry }