runtime/cds/appcds/dynamicArchive/TestLambdaInvokers.java fails in case both UseCompactObjectHeaders and AOTClassLinking flags are enabled.
The test fail because
...
[LF_RESOLVE] java.lang.invoke.Invokers$Holder invoker L3I_L (fail)
[0.269s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b004c00 source: __JVM_LookupDefineClass__
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L4I_L (success)
[LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder delegate L3I_L (success)
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LL (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L5_L (success)
[0.273s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005000 source: __JVM_LookupDefineClass__
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLL (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L6_L (success)
[0.277s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005400 source: __JVM_LookupDefineClass__
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLI (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L6I_L (fail)
[0.280s][info][class,load] java.lang.invoke.LambdaForm$DMH/0x00007fb85b005800 source: __JVM_LookupDefineClass__
[0.283s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005c00 source: __JVM_LookupDefineClass__
];
stderr: []
exitValue = 0
java.lang.RuntimeException: '[LF_RESOLVE] java.lang.invoke.Invokers$Holder invoker L3I_L (success)' missing from stdout/stderr
at jdk.test.lib.process.OutputAnalyzer.shouldContain(OutputAnalyzer.java:253)
at TestLambdaInvokers.lambda$doTest$1(TestLambdaInvokers.java:76)
at jdk.test.lib.cds.CDSTestUtils$Result.assertNormalExit(CDSTestUtils.java:157)
at TestLambdaInvokers.doTest(TestLambdaInvokers.java:66)
at TestLambdaInvokers.testWithDefaultBase(TestLambdaInvokers.java:82)
at DynamicArchiveTestBase.runTest(DynamicArchiveTestBase.java:76)
at TestLambdaInvokers.main(TestLambdaInvokers.java:86)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
at java.base/java.lang.Thread.run(Thread.java:1447)
Disabling either AOTClassLinking or UseCompactObjectHeaders make the test pass.
The test fail because
...
[LF_RESOLVE] java.lang.invoke.Invokers$Holder invoker L3I_L (fail)
[0.269s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b004c00 source: __JVM_LookupDefineClass__
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L4I_L (success)
[LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder delegate L3I_L (success)
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LL (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L5_L (success)
[0.273s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005000 source: __JVM_LookupDefineClass__
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLL (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L6_L (success)
[0.277s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005400 source: __JVM_LookupDefineClass__
[SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLI (salvaged)
[LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L6I_L (fail)
[0.280s][info][class,load] java.lang.invoke.LambdaForm$DMH/0x00007fb85b005800 source: __JVM_LookupDefineClass__
[0.283s][info][class,load] java.lang.invoke.LambdaForm$MH/0x00007fb85b005c00 source: __JVM_LookupDefineClass__
];
stderr: []
exitValue = 0
java.lang.RuntimeException: '[LF_RESOLVE] java.lang.invoke.Invokers$Holder invoker L3I_L (success)' missing from stdout/stderr
at jdk.test.lib.process.OutputAnalyzer.shouldContain(OutputAnalyzer.java:253)
at TestLambdaInvokers.lambda$doTest$1(TestLambdaInvokers.java:76)
at jdk.test.lib.cds.CDSTestUtils$Result.assertNormalExit(CDSTestUtils.java:157)
at TestLambdaInvokers.doTest(TestLambdaInvokers.java:66)
at TestLambdaInvokers.testWithDefaultBase(TestLambdaInvokers.java:82)
at DynamicArchiveTestBase.runTest(DynamicArchiveTestBase.java:76)
at TestLambdaInvokers.main(TestLambdaInvokers.java:86)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
at java.base/java.lang.Thread.run(Thread.java:1447)
Disabling either AOTClassLinking or UseCompactObjectHeaders make the test pass.