JDK-7016274 : JSR 292 Breakpoint set to MH target is not trigged in compiled code
Type:Bug
Component:hotspot
Sub-Component:compiler
Affected Version:hs20
Priority:P4
Status:Closed
Resolution:Duplicate
OS:generic
CPU:generic
Submitted:2011-02-01
Updated:2012-02-01
Resolved:2011-08-02
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
When a breakpoint is set to MethodHandle target method and the method become compiled, the breakpoint event is not received for the target method.
Comments
EVALUATION
The test failures are the same problems as 6990212.
02-08-2011
EVALUATION
These failures have been fixed in VM testbase 7 r06.
02-08-2011
EVALUATION
Currently when I run this test I get a couple NoSuchMethodErrors.
debugee.stdout> # ERROR: Test caught an exception:debugee.stdout> # ERROR: java.lang.IllegalArgumentException: Can't create throw/catch TFdebugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHThrowCatchTFPair$ThrowTF.computeInboundMH(MHThrowCatchTFPair.java:62)debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHBasicUnaryTF.computeInboundMH(MHBasicUnaryTF.java:32)debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHPrimitiveTF.computeInboundCall(MHPrimitiveTF.java:12)debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHMacroTF.addTransformation(MHMacroTF.java:42)debugee.stdout> # ERROR: at vm.mlvm.meth.share.MHTransformationGen.createSequence(MHTransformationGen.java:332)debugee.stdout> # ERROR: at vm.mlvm.share.jpda.SDE_MHDebuggeeBase.startUp(SDE_MHDebuggeeBase.java:79)debugee.stdout> # ERROR: at vm.mlvm.share.jpda.Debuggee.run(Debuggee.java:40)debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.runMlvmTest(MlvmTest.java:196)debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.launch(MlvmTest.java:134)debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.launch(MlvmTest.java:103)debugee.stdout> # ERROR: at vm.mlvm.share.jdi.MHDebuggee.main(MHDebuggee.java:7)debugee.stdout> # ERROR: Caused by: java.lang.NoSuchMethodError: java.lang.invoke.MethodHandles.convertArguments(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHThrowCatchTFPair$ThrowTF.computeInboundMH(MHThrowCatchTFPair.java:33)
debugee.stdout> # ERROR: ... 10 more
debugee.stdout> # ERROR: java.lang.IllegalArgumentException: Can't create throw/catch TF
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHThrowCatchTFPair$ThrowTF.computeInboundMH(MHThrowCatchTFPair.java:62)
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHBasicUnaryTF.computeInboundMH(MHBasicUnaryTF.java:32)
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHPrimitiveTF.computeInboundCall(MHPrimitiveTF.java:12)
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHMacroTF.addTransformation(MHMacroTF.java:42)
debugee.stdout> # ERROR: at vm.mlvm.meth.share.MHTransformationGen.createSequence(MHTransformationGen.java:332)
debugee.stdout> # ERROR: at vm.mlvm.share.jpda.SDE_MHDebuggeeBase.startUp(SDE_MHDebuggeeBase.java:79)
debugee.stdout> # ERROR: at vm.mlvm.share.jpda.Debuggee.run(Debuggee.java:40)
debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.runMlvmTest(MlvmTest.java:196)
debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.launch(MlvmTest.java:134)
debugee.stdout> # ERROR: at vm.mlvm.share.MlvmTest.launch(MlvmTest.java:103)
debugee.stdout> # ERROR: at vm.mlvm.share.jdi.MHDebuggee.main(MHDebuggee.java:7)
debugee.stdout> # ERROR: Caused by: java.lang.NoSuchMethodError: java.lang.invoke.MethodHandles.convertArguments(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
debugee.stdout> # ERROR: at vm.mlvm.meth.share.transform.v2.MHThrowCatchTFPair$ThrowTF.computeInboundMH(MHThrowCatchTFPair.java:33)
debugee.stdout> # ERROR: ... 10 more
It appears this test hasn't been updated for the final version of jsr 292.
30-06-2011
EVALUATION
JVMTI support code needs to be updated for latest JVM changes.