-
Bug
-
Resolution: Fixed
-
P4
-
16
-
b22
It currently fails on x86_32 with:
$ CONF=linux-x86-server-fastdebug make images run-test TEST=java/util/stream/test/org/openjdk/tests/java/util/stream/SpliteratorTest.java
test org.openjdk.tests.java.util.stream.SpliteratorTest.testSegmentSpliterator("doubles", [1024:b64], org.openjdk.tests.java.util.stream.SegmentTestDataProvider$$Lambda$219/0xc47061e8@3a1a30): failure
java.lang.IllegalStateException: Misaligned access at address: 12
at java.base/java.lang.invoke.MemoryAccessVarHandleBase.newIllegalStateExceptionForMisalignedAccess(MemoryAccessVarHandleBase.java:54)
at java.base/java.lang.invoke.MemoryAccessVarHandleDoubleHelper.offsetNoVMAlignCheck(MemoryAccessVarHandleDoubleHelper.java:76)
at java.base/java.lang.invoke.MemoryAccessVarHandleDoubleHelper.get0(MemoryAccessVarHandleDoubleHelper.java:87)
at java.base/java.lang.invoke.VarHandleGuards.guard_L_D(VarHandleGuards.java:295)
at org.openjdk.tests.java.util.stream.SegmentTestDataProvider.lambda$compareSegmentsDouble$7(SegmentTestDataProvider.java:125)
I checked that onceJDK-8254162 integrates, that issue is gone. Until then, having clean x86_32 testing is beneficial for other work.
$ CONF=linux-x86-server-fastdebug make images run-test TEST=java/util/stream/test/org/openjdk/tests/java/util/stream/SpliteratorTest.java
test org.openjdk.tests.java.util.stream.SpliteratorTest.testSegmentSpliterator("doubles", [1024:b64], org.openjdk.tests.java.util.stream.SegmentTestDataProvider$$Lambda$219/0xc47061e8@3a1a30): failure
java.lang.IllegalStateException: Misaligned access at address: 12
at java.base/java.lang.invoke.MemoryAccessVarHandleBase.newIllegalStateExceptionForMisalignedAccess(MemoryAccessVarHandleBase.java:54)
at java.base/java.lang.invoke.MemoryAccessVarHandleDoubleHelper.offsetNoVMAlignCheck(MemoryAccessVarHandleDoubleHelper.java:76)
at java.base/java.lang.invoke.MemoryAccessVarHandleDoubleHelper.get0(MemoryAccessVarHandleDoubleHelper.java:87)
at java.base/java.lang.invoke.VarHandleGuards.guard_L_D(VarHandleGuards.java:295)
at org.openjdk.tests.java.util.stream.SegmentTestDataProvider.lambda$compareSegmentsDouble$7(SegmentTestDataProvider.java:125)
I checked that once
- relates to
-
JDK-8255350 MemoryLayout and 32-bit VMs: should long[]/double[] be 4-byte aligned?
- Closed
-
JDK-8254162 Implementation of Foreign-Memory Access API (Third Incubator)
- Resolved