Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
8255233: InterpreterRuntime::at_unwind should be a JRT_LEAF
Reviewed-by: coleenp, dholmes
  • Loading branch information
fisk committed Oct 28, 2020
1 parent bbf0a31 commit aaf4f69
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 6 deletions.
4 changes: 3 additions & 1 deletion src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp
Expand Up @@ -551,7 +551,9 @@ void InterpreterMacroAssembler::remove_activation(
br(Assembler::AL, fast_path);
bind(slow_path);
push(state);
call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::at_unwind));
set_last_Java_frame(esp, rfp, (address)pc(), rscratch1);
super_call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::at_unwind), rthread);
reset_last_Java_frame(true);
pop(state);
bind(fast_path);

Expand Down
4 changes: 3 additions & 1 deletion src/hotspot/cpu/x86/interp_masm_x86.cpp
Expand Up @@ -1003,7 +1003,9 @@ void InterpreterMacroAssembler::remove_activation(
jmp(fast_path);
bind(slow_path);
push(state);
call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::at_unwind));
set_last_Java_frame(rthread, noreg, rbp, (address)pc());
super_call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::at_unwind), rthread);
reset_last_Java_frame(rthread, true);
pop(state);
NOT_LP64(get_thread(rthread);) // call_VM clobbered it, restore
bind(fast_path);
Expand Down
5 changes: 1 addition & 4 deletions src/hotspot/share/interpreter/interpreterRuntime.cpp
Expand Up @@ -1172,10 +1172,7 @@ JRT_ENTRY(void, InterpreterRuntime::at_safepoint(JavaThread* thread))
}
JRT_END

JRT_ENTRY(void, InterpreterRuntime::at_unwind(JavaThread* thread))
// JRT_END does an implicit safepoint check, hence we are guaranteed to block
// if this is called during a safepoint

JRT_LEAF(void, InterpreterRuntime::at_unwind(JavaThread* thread))
// This function is called by the interpreter when the return poll found a reason
// to call the VM. The reason could be that we are returning into a not yet safe
// to access frame. We handle that below.
Expand Down

1 comment on commit aaf4f69

@bridgekeeper
Copy link

@bridgekeeper bridgekeeper bot commented on aaf4f69 Oct 28, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.