Review Request (M) 7187554: JSR 292: JVMTI PopFrame needs to handle appendix arguments
christian.thalinger at oracle.com
Fri Jul 26 09:34:34 PDT 2013
On Jul 25, 2013, at 5:14 PM, serguei.spitsyn at oracle.com wrote:
> Please, review the fix for:
> bug: http://bugs.sun.com/view_bug.do?bug_id=7187554
> jbs: https://jbs.oracle.com/bugs/browse/JDK-7187554
> Open webrev:
+ // Accessors
+ static oop member(oop mh);
+ static void set_member(oop mh, oop member);
Where is the implementation for these methods? Because if we had them you could use it here:
+ oop member_name = (dmh_oop)->obj_field(java_lang_invoke_DirectMethodHandle::member_offset_in_bytes());
Otherwise this change looks really good and clean. It's not so bad after all.
> Restore the appendix argument of a polymorphic intrinsic call
> needed for a invokestatic re-execution after JVMTI PopFrame().
> When JVMTI's PopFrame removes a frame that was called via a call site that
> takes an appendix and that call site is reexecuted the appendix is not on
> the stack anymore because it got removed by the adapter.
> This fix is to detect such a case and push the appendix on the stack again before reexecution.
> UTE tests - in progress: vm.mlvm.testlist, nsk.jvmti.testlist, nsk.jdi.testlist
More information about the hotspot-dev