JDK-8058293 : Bit set computation in MHs.findFirstDupOrDrop/findFirstDrop is broken
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang.invoke
  • Affected Version: 8u40,9
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2014-09-12
  • Updated: 2016-05-27
  • Resolved: 2014-09-16
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.

To download the current JDK release, click here.
JDK 8 JDK 9
8u40Fixed 9 b32Fixed
Description
new tests for LFC (JDK-8057719) fail due to:
Tested LF caching feature with MethodHandles.permuteArguments method.
java.lang.ArrayIndexOutOfBoundsException: -1
        at java.lang.invoke.MethodHandles.permuteArguments(MethodHandles.java:2119)
        at TestMethods$7.getMH(TestMethods.java:271)
        at TestMethods.getTestCaseMH(TestMethods.java:541)
        at LFSingleThreadCachingTest.doTest(LFSingleThreadCachingTest.java:62)
        at LambdaFormTestCase.runTests(LambdaFormTestCase.java:98)
        at LFSingleThreadCachingTest.main(LFSingleThreadCachingTest.java:76)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.javatest.regtest.MainWrapper$MainThread.run(MainWrapper.java:94)
        at java.lang.Thread.run(Thread.java:745)
FAILED

test:
java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java

options to reproduce:
-Dseed=9052482610753944656
-DtestLimit=2000
-Djava.lang.invoke.MethodHandle.USE_LF_EDITOR=true


Comments
RULE java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java Exception java.lang.Error: ... of ... test cases FAILED! Rerun the test with the same "-Dseed=" option as in the log file! RULE java/lang/invoke/LFCaching/LFSingleThreadCachingTest.java Exception java.lang.VirtualMachineError: out of space in CodeCache for adapters
17-09-2014

the latest version of tests can be found here -- http://cr.openjdk.java.net/~iignatyev/kshefov/8057719/
12-09-2014

LFMultiThreadCachingTes also can fail w/ another stacktrace: java.lang.ArrayIndexOutOfBoundsException: 64 at java.lang.invoke.MethodType.parameterType(MethodType.java:707) at java.lang.invoke.MethodHandles.permuteArguments(MethodHandles.java:2142) at TestMethods$7.getMH(TestMethods.java:271) at TestMethods.getTestCaseMH(TestMethods.java:541) at LFMultiThreadCachingTest.lambda$doTest$0(LFMultiThreadCachingTest.java:80) at LFMultiThreadCachingTest$$Lambda$5/130788816.run(Unknown Source) at java.lang.Thread.run(Thread.java:745) options to reproduce: -Dseed=-8955405423818077310 -DtestLimit=2000
12-09-2014