Skip to content
Permalink
Browse files
8244920: Access violation in frames::interpreter_frame_method
Reviewed-by: mgronlun, coleenp
  • Loading branch information
fisk committed Jun 9, 2020
1 parent ac2828d commit f160c80e3b2b2b58135b9d787ae06c354f13533a
Showing 1 changed file with 8 additions and 1 deletion.
@@ -664,9 +664,17 @@ JRT_LEAF(BasicType, Deoptimization::unpack_frames(JavaThread* thread, int exec_m

UnrollBlock* info = array->unroll_block();

// We set the last_Java frame. But the stack isn't really parsable here. So we
// clear it to make sure JFR understands not to try and walk stacks from events
// in here.
intptr_t* sp = thread->frame_anchor()->last_Java_sp();
thread->frame_anchor()->set_last_Java_sp(NULL);

// Unpack the interpreter frames and any adapter frame (c2 only) we might create.
array->unpack_to_stack(stub_frame, exec_mode, info->caller_actual_parameters());

thread->frame_anchor()->set_last_Java_sp(sp);

BasicType bt = info->return_type();

// If we have an exception pending, claim that the return type is an oop
@@ -802,7 +810,6 @@ JRT_LEAF(BasicType, Deoptimization::unpack_frames(JavaThread* thread, int exec_m
}
#endif /* !PRODUCT */


return bt;
JRT_END

0 comments on commit f160c80

Please sign in to comment.