On Mon, 2 Nov 2020 16:20:09 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:
>> Erik Österlund has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Coleen CR1: Refactoring > > This looks better. Just to have the JRT_BLOCK be unconditional is an > improvement. Erik, Thank you for the update! It looks more elegant. One concern is that after the move of this fragment to the post_method_exit_inner: 1614 if (state == NULL || !state->is_interp_only_mode()) { 1615 // for any thread that actually wants method exit, interp_only_mode is set 1616 return; 1617 } there is no guarantee that the current frame is interpreted below: 1580 if (!exception_exit) { 1581 oop oop_result; 1582 BasicType type = current_frame.interpreter_frame_result(&oop_result, &value); . . . 1597 if (result.not_null() && !mh->is_native()) { 1598 // We have to restore the oop on the stack for interpreter frames 1599 *(oop*)current_frame.interpreter_frame_tos_address() = result(); 1600 } Probably, extra checks for current_frame.is_interpreted_frame() in these fragments will be sufficient. ------------- PR: https://git.openjdk.java.net/jdk/pull/930