eclipse-openj9 / openj9

Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Other
3.29k stars 722 forks source link

JDK18 aarch64_linux jdk_vector_1_FAILED - jdk/incubator/vector/VectorReshapeTests.java #15562

Open JasonFengJ9 opened 2 years ago

JasonFengJ9 commented 2 years ago

Failure link

From an internal build(cent7-aarch64-6):

openjdk version "18.0.1.1" 2022-04-22
IBM Semeru Runtime Open Edition 18.0.2.0-m2 (build 18.0.1.1+2)
Eclipse OpenJ9 VM 18.0.2.0-m2 (build master-8ead00aa6, JRE 18 Linux aarch64-64-Bit Compressed References 20220714_19 (JIT enabled, AOT enabled)
OpenJ9   - 8ead00aa6
OMR      - 29756eb80
JCL      - c0b6f04919 based on jdk-18.0.1.1+2)

Rerun in Grinder - Change TARGET to run only the failed test targets.

Optional info

Failure output (captured from console output)

[2022-07-15T00:22:30.546Z] variation: Mode650
[2022-07-15T00:22:30.546Z] JVM_OPTIONS:  -XX:-UseCompressedOops 

[2022-07-15T00:55:53.946Z] TEST: jdk/incubator/vector/VectorReshapeTests.java

[2022-07-15T00:55:53.947Z] input:  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
[2022-07-15T00:55:53.947Z] Failing with Species[byte, 16, S_128_BIT]->Species[short, 8, S_128_BIT] (lanewise), partLimit=2, block=8, part=1, origin=8
[2022-07-15T00:55:53.947Z] expect: [9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0]
[2022-07-15T00:55:53.947Z] output: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[2022-07-15T00:55:53.947Z] test VectorReshapeTests.testRebracket128(byte(i)): failure
[2022-07-15T00:55:53.947Z] java.lang.AssertionError: arrays differ firstly at element [0]; expected value is <9> but was <0>. 
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.fail(Assert.java:99)
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.assertEquals(Assert.java:238)
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.assertEquals(Assert.java:220)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.checkPartialResult(VectorReshapeTests.java:419)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testVectorRebracket(VectorReshapeTests.java:746)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testVectorRebracketLanewise(VectorReshapeTests.java:706)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testVectorRebracket(VectorReshapeTests.java:701)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testRebracket128(VectorReshapeTests.java:896)
[2022-07-15T00:55:53.947Z]  at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.reflect.Method.invoke(Method.java:577)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
[2022-07-15T00:55:53.947Z]  at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
[2022-07-15T00:55:53.947Z]  at org.testng.TestRunner.privateRun(TestRunner.java:764)
[2022-07-15T00:55:53.947Z]  at org.testng.TestRunner.run(TestRunner.java:585)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.runTest(SuiteRunner.java:384)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:378)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.privateRun(SuiteRunner.java:337)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.run(SuiteRunner.java:286)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:53)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:96)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuitesSequentially(TestNG.java:1218)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuites(TestNG.java:1069)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.run(TestNG.java:1037)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54)
[2022-07-15T00:55:53.947Z]  at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.reflect.Method.invoke(Method.java:577)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.Thread.run(Thread.java:857)

[2022-07-15T00:55:53.947Z] input:  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
[2022-07-15T00:55:53.947Z] Failing with Species[byte, 16, S_128_BIT]->Species[byte, 8, S_64_BIT] (reinterpret), partLimit=2, block=8, part=1, origin=8
[2022-07-15T00:55:53.947Z] expect: [9, 10, 11, 12, 13, 14, 15, 16]
[2022-07-15T00:55:53.947Z] output: [0, 0, 0, 0, 0, 0, 0, 0]
[2022-07-15T00:55:53.947Z] test VectorReshapeTests.testReshapeByte(byte(i)): failure
[2022-07-15T00:55:53.947Z] java.lang.AssertionError: arrays differ firstly at element [0]; expected value is <9> but was <0>. 
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.fail(Assert.java:99)
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.assertEquals(Assert.java:238)
[2022-07-15T00:55:53.947Z]  at org.testng.Assert.assertEquals(Assert.java:220)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.checkPartialResult(VectorReshapeTests.java:419)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testVectorReshape(VectorReshapeTests.java:357)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testVectorReshape(VectorReshapeTests.java:323)
[2022-07-15T00:55:53.947Z]  at VectorReshapeTests.testReshapeByte(VectorReshapeTests.java:442)
[2022-07-15T00:55:53.947Z]  at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.reflect.Method.invoke(Method.java:577)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
[2022-07-15T00:55:53.947Z]  at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
[2022-07-15T00:55:53.947Z]  at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
[2022-07-15T00:55:53.947Z]  at org.testng.TestRunner.privateRun(TestRunner.java:764)
[2022-07-15T00:55:53.947Z]  at org.testng.TestRunner.run(TestRunner.java:585)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.runTest(SuiteRunner.java:384)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:378)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.privateRun(SuiteRunner.java:337)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunner.run(SuiteRunner.java:286)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:53)
[2022-07-15T00:55:53.947Z]  at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:96)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuitesSequentially(TestNG.java:1218)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.runSuites(TestNG.java:1069)
[2022-07-15T00:55:53.947Z]  at org.testng.TestNG.run(TestNG.java:1037)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:94)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.TestNGRunner.main(TestNGRunner.java:54)
[2022-07-15T00:55:53.947Z]  at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.reflect.Method.invoke(Method.java:577)
[2022-07-15T00:55:53.947Z]  at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
[2022-07-15T00:55:53.947Z]  at java.base/java.lang.Thread.run(Thread.java:857)

[2022-07-15T00:55:53.947Z] ===============================================
[2022-07-15T00:55:53.947Z] jdk/incubator/vector/VectorReshapeTests.java
[2022-07-15T00:55:53.947Z] Total tests run: 20, Passes: 18, Failures: 2, Skips: 0
[2022-07-15T00:55:53.947Z] ===============================================

[2022-07-15T00:55:53.947Z] TEST RESULT: Failed. Execution failed: `main' threw exception: java.lang.Exception: failures: 2
[2022-07-15T00:55:53.947Z] --------------------------------------------------
[2022-07-15T00:56:53.725Z] Test results: passed: 71; failed: 1
[2022-07-15T00:57:00.586Z] Report written to /home/jenkins/workspace/Test_openjdk18_j9_extended.openjdk_aarch64_linux/jvmtest/openjdk/report/html/report.html
[2022-07-15T00:57:00.586Z] Results written to /home/jenkins/workspace/Test_openjdk18_j9_extended.openjdk_aarch64_linux/aqa-tests/TKG/output_16578313613568/jdk_vector_1/work
[2022-07-15T00:57:00.586Z] Error: Some tests failed or other problems occurred.
[2022-07-15T00:57:00.586Z] 
[2022-07-15T00:57:00.586Z] jdk_vector_1_FAILED
pshipton commented 2 years ago

@gita-omr

pshipton commented 2 years ago

@knn-k

knn-k commented 2 years ago

FYI @Akira1Saitoh

Akira1Saitoh commented 2 years ago

I have been trying to reproduce it on internal Grinder, but not successful so far.

Akira1Saitoh commented 2 years ago

Reproduced on internal Grinder jobs (job/Grinder/26020/, job/Grinder/26022/).

Akira1Saitoh commented 2 years ago

It seems AbstractVector.castShape fails to convert ByteVector to ShortVector. https://github.com/ibmruntimes/openj9-openjdk-jdk18/blob/0c89bcfb32934a82973a74b49c726382ae98f552/test/jdk/jdk/incubator/vector/VectorReshapeTests.java#L737

<ffff94422400> JIT inline frame: bp = 0x0000FFFEE40080B8, pc = 0x0000FFFF5AD37524, unwindSP = 0x0000FFFEE4007FA0, cp = 0x0000FFFF94495790, arg0EA = 0x0000000000000000, jitInfo = 0x0000FFFF209F3A78
<ffff94422400>  Method: VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorSpecies;[B[BZ)V !j9method 0x0000FFFF94497930
<ffff94422400>  Bytecode index = 265, inlineDepth = 2, PC offset = 0x0000FFFF5AD37529
<ffff94422400> JIT inline frame: bp = 0x0000FFFEE40080B8, pc = 0x0000FFFF5AD37524, unwindSP = 0x0000FFFEE4007FA0, cp = 0x0000FFFF94495790, arg0EA = 0x0000000000000000, jitInfo = 0x0000FFFF209F3A78
<ffff94422400>  Method: VectorReshapeTests.testVectorRebracketLanewise(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorSpecies;[B[B)V !j9method 0x0000FFFF94497910
<ffff94422400>  Bytecode index = 5, inlineDepth = 1, PC offset = 0xFFFFFFFFFFD3B460
 319299     0xffff5ad373f4 00000878 [    0xfffee3356050] f9407a83 186   ldrimmx         w3, [w20, 240]          # Sy
 319299 mRef  <auto slot 7>[#429  Auto +240] [flags 0x7 0x0 ]       <--- Contains ByteVector
 319300 
 319301  \\ VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorS
 319301 pecies;[B[B)V
 319302  \\   12 JBinvokestatic 122 VectorReshapeTests.testVectorRebracketLanewise(Ljdk/incubator/vector/VectorSpeci
 319302 es;Ljdk/incubator/vector/VectorSpecies;[B[B)V
 319303  \\       5 JBinvokestatic 121 VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Lj
 319303 dk/incubator/vector/VectorSpecies;[B[BZ)V
 319304  \\        191 JBinvokevirtual 65 jdk/incubator/vector/Vector.castShape(Ljdk/incubator/vector/VectorSpecies;
 319304 I)Ljdk/incubator/vector/Vector;
 319305 
 319306     0xffff5ad373f8 0000087c [    0xfffee3356150] aa0303e0 191   movx    w0, w3
 319307 
 319308  \\ VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorS
 319308 pecies;[B[B)V
 319309  \\   12 JBinvokestatic 122 VectorReshapeTests.testVectorRebracketLanewise(Ljdk/incubator/vector/VectorSpeci
 319309 es;Ljdk/incubator/vector/VectorSpecies;[B[B)V
 319310  \\       5 JBinvokestatic 121 VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Lj
 319310 dk/incubator/vector/VectorSpecies;[B[BZ)V
 319311  \\        188 JBaload1
 319312 
 319313     0xffff5ad373fc 00000880 [    0xfffee3356310] f9409a96 188   ldrimmx         w22, [w20, 304]         # Sy
 319313 mRef  <parm 1 Ljdk/incubator/vector/VectorSpecies;>[#336  Parm +304] [flags 0xc0000107 0x0 ]
 319314 
 319315  \\ VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorS
 319315 pecies;[B[B)V
 319316  \\   12 JBinvokestatic 122 VectorReshapeTests.testVectorRebracketLanewise(Ljdk/incubator/vector/VectorSpeci 319316 es;Ljdk/incubator/vector/VectorSpecies;[B[B)V
 319317  \\       5 JBinvokestatic 121 VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Lj
 319317 dk/incubator/vector/VectorSpecies;[B[BZ)V
 319318  \\        191 JBinvokevirtual 65 jdk/incubator/vector/Vector.castShape(Ljdk/incubator/vector/VectorSpecies;
 319318 I)Ljdk/incubator/vector/Vector;
 319319 
 319320     0xffff5ad37400 00000884 [    0xfffee3356410] aa1603e1 191   movx    w1, w22
 319321     0xffff5ad37404 00000888 [    0xfffee3356510] aa1503e2 191   movx    w2, w21
 319322     0xffff5ad37408 0000088c [    0xfffee3357ae0] f9400077 191   ldrimmx         w23, [w3, 0]            # Sy 319322 mRef  <vft-symbol>[#263  Shadow] [flags 0x18607 0x0 ]        ; Throws Implicit Null Pointer Exception
 319323     0xffff5ad3740c 00000890 [    0xfffee3357b70] 9278def7 191   andimmx         w23, w23, 0xffffffffffffff00
 319324     0xffff5ad37410 00000894 [    0xfffee3358490] d2910009 191   movzx   w9, 0x8800
 319325     0xffff5ad37414 00000898 [    0xfffee3358520] f2bc83e9 191   movkx   w9, 0xe41f, LSL #16
 319326     0xffff5ad37418 0000089c [    0xfffee33585b0] f2dfffc9 191   movkx   w9, 0xfffe, LSL #32
 319327     0xffff5ad3741c 000008a0 [    0xfffee3358640] eb0902ff 191   cmpx    w23, w9
 319328     0xffff5ad37420 000008a4 [    0xfffee33586d0] 54000061 191   b.ne    Label L0418
 319329     0xffff5ad37424 000008a8 [    0xfffee3358760] 97f15bce 191   bl      0000FFFF5A98E35C                ; Di 319329 rect Call "jdk/incubator/vector/AbstractVector.castShape(Ljdk/incubator/vector/VectorSpecies;I)Ljdk/incubato 319329 r/vector/Vector;"
 319330     0xffff5ad37428 000008ac [    0xfffee33587f0] 1400000b 191   b       Label L0417
 319331     0xffff5ad3742c 000008b0 [    0xfffee3358870]          191   Label L0418:
 319332     0xffff5ad3742c 000008b0 [    0xfffee3358ef0] d2880009 191   movzx   w9, 0x4000
 319333     0xffff5ad37430 000008b4 [    0xfffee3358f80] f2bc8509 191   movkx   w9, 0xe428, LSL #16
 319334     0xffff5ad37434 000008b8 [    0xfffee3359010] f2dfffc9 191   movkx   w9, 0xfffe, LSL #32
 319335     0xffff5ad37438 000008bc [    0xfffee33590a0] eb0902ff 191   cmpx    w23, w9
 319336     0xffff5ad3743c 000008c0 [    0xfffee3359130] 54000061 191   b.ne    Label L0419
 319337     0xffff5ad37440 000008c4 [    0xfffee33591c0] 97f15bc7 191   bl      0000FFFF5A98E35C                ; Di 319337 rect Call "jdk/incubator/vector/AbstractVector.castShape(Ljdk/incubator/vector/VectorSpecies;I)Ljdk/incubato 319337 r/vector/Vector;"
 319338     0xffff5ad37444 000008c8 [    0xfffee3359250] 14000004 191   b       Label L0417
 319339     0xffff5ad37448 000008cc [    0xfffee33592d0]          191   Label L0419:
 319340     0xffff5ad37448 000008cc [    0xfffee3359350] 928049e9 191   movnx   w9, 0x024f
 319341     0xffff5ad3744c 000008d0 [    0xfffee3359470] f8696ae9 191   ldroffx         w9, [w23, w9]
 319342     0xffff5ad37450 000008d4 [    0xfffee3359500] d63f0120 191   blr     x9
 319343     0xffff5ad37454 000008d8 [    0xfffee3359c50]          191   assocreg
 319344     0xffff5ad37454 000008d8 [    0xfffee3359580]          191   Label L0417:
319345  PRE: [&GPR_1649 : x0] [&GPR_1652 : x1] [GPR_1653 : x2] [D_GPR_1654 : x3] [D_GPR_1655 : x4] [D_GPR_1656 : x5 319345 ] [D_GPR_1657 : x6] [D_GPR_1658 : x7] [D_GPR_1659 : x8] [GPR_1660 : x9] [D_GPR_1661 : x10] [D_GPR_1662 : x11 319345 ] [D_GPR_1663 : x12] [D_GPR_1664 : x13] [D_GPR_1665 : x14] [D_GPR_1666 : x15] [D_GPR_1667 : x18] [D_FPR_1668 319345  : d0] [D_FPR_1669 : d1] [D_FPR_1670 : d2] [D_FPR_1671 : d3] [D_FPR_1672 : d4] [D_FPR_1673 : d5] [D_FPR_1674 319345  : d6] [D_FPR_1675 : d7] [D_FPR_1676 : d8] [D_FPR_1677 : d9] [D_FPR_1678 : d10] [D_FPR_1679 : d11] [D_FPR_16 319345 80 : d12] [D_FPR_1681 : d13] [D_FPR_1682 : d14] [D_FPR_1683 : d15] [D_FPR_1684 : d16] [D_FPR_1685 : d17] [D_ 319345 FPR_1686 : d18] [D_FPR_1687 : d19] [D_FPR_1688 : d20] [D_FPR_1689 : d21] [D_FPR_1690 : d22] [D_FPR_1691 : d2 319345 3] [D_FPR_1692 : d24] [D_FPR_1693 : d25] [D_FPR_1694 : d26] [D_FPR_1695 : d27] [D_FPR_1696 : d28] [D_FPR_169 319345 7 : d29] [D_FPR_1698 : d30] [D_FPR_1699 : d31] [GPR_1700 : x23]
 319346 POST: [&GPR_1650 : x0] [&GPR_1652 : x1] [GPR_1653 : x2] [D_GPR_1654 : x3] [D_GPR_1655 : x4] [D_GPR_1656 : x5 319346 ] [D_GPR_1657 : x6] [D_GPR_1658 : x7] [D_GPR_1659 : x8] [GPR_1660 : x9] [D_GPR_1661 : x10] [D_GPR_1662 : x11 319346 ] [D_GPR_1663 : x12] [D_GPR_1664 : x13] [D_GPR_1665 : x14] [D_GPR_1666 : x15] [D_GPR_1667 : x18] [D_FPR_1668 319346  : d0] [D_FPR_1669 : d1] [D_FPR_1670 : d2] [D_FPR_1671 : d3] [D_FPR_1672 : d4] [D_FPR_1673 : d5] [D_FPR_1674 319346  : d6] [D_FPR_1675 : d7] [D_FPR_1676 : d8] [D_FPR_1677 : d9] [D_FPR_1678 : d10] [D_FPR_1679 : d11] [D_FPR_16 319346 80 : d12] [D_FPR_1681 : d13] [D_FPR_1682 : d14] [D_FPR_1683 : d15] [D_FPR_1684 : d16] [D_FPR_1685 : d17] [D_ 319346 FPR_1686 : d18] [D_FPR_1687 : d19] [D_FPR_1688 : d20] [D_FPR_1689 : d21] [D_FPR_1690 : d22] [D_FPR_1691 : d2 319346 3] [D_FPR_1692 : d24] [D_FPR_1693 : d25] [D_FPR_1694 : d26] [D_FPR_1695 : d27] [D_FPR_1696 : d28] [D_FPR_169 319346 7 : d29] [D_FPR_1698 : d30] [D_FPR_1699 : d31] [GPR_1700 : x23] 
 319347     0xffff5ad37454 000008d8 [    0xfffee32607c0] aa0003f7 191   movx    w23, w0
 319348 
 319349  \\ VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Ljdk/incubator/vector/VectorS 319349 pecies;[B[B)V
 319350  \\   12 JBinvokestatic 122 VectorReshapeTests.testVectorRebracketLanewise(Ljdk/incubator/vector/VectorSpeci 319350 es;Ljdk/incubator/vector/VectorSpecies;[B[B)V
 319351  \\       5 JBinvokestatic 121 VectorReshapeTests.testVectorRebracket(Ljdk/incubator/vector/VectorSpecies;Lj 319351 dk/incubator/vector/VectorSpecies;[B[BZ)V
 319352  \\        194 JBgoto 205
 319353 
 319354     0xffff5ad37458 000008dc [    0xfffee335adc0] f9007e97 194   strimmx         w23, [w20, 248]         # Sy 319354 mRef  <pending push temp 0>[#450  Auto +248] [flags 0x7 0x800 ]  <--- contains ShortVector
(gdb) x/8x 0x0000FFFEE4007FA0 + 240
0xfffee4008090: 0x932c7c50      0x0000ffff      0x932c8ba0      0x0000ffff
0xfffee40080a0: 0x932c8ba0      0x0000ffff      0x932c8c38      0x0000ffff
> !j9object 0xffff932c7c50
!J9Object 0x0000FFFF932C7C50 {
        struct J9Class* clazz = !j9class 0xFFFEE4284000 // jdk/incubator/vector/Byte128Vector
        Object flags = 0x00000000;
        J lockword = 0x0000000000000000 (offset = 0) (java/lang/Object) <hidden>
        Ljava/lang/Object; payload = !fj9object 0xffff932c7c28 (offset = 8) (jdk/internal/vm/vector/VectorSupport$VectorPayload)
}
> !fj9object 0xffff932c7c28
!J9IndexableObject 0x0000FFFF932C7C28 {
    struct J9Class* clazz = !j9arrayclass 0xFFFF941AE000   // [B
    Object flags = 0x00000000;
    U_32 size = 0x00000010;
        [0] =   1, 0x01
        [1] =   2, 0x02
        [2] =   3, 0x03
        [3] =   4, 0x04
        [4] =   5, 0x05
        [5] =   6, 0x06
        [6] =   7, 0x07
        [7] =   8, 0x08
        [8] =   9, 0x09
        [9] =  10, 0x0a
        [10] =  11, 0x0b
        [11] =  12, 0x0c
        [12] =  13, 0x0d
        [13] =  14, 0x0e
        [14] =  15, 0x0f
        [15] =  16, 0x10
}
> !j9object 0xffff932c8ba0
!J9Object 0x0000FFFF932C8BA0 {
        struct J9Class* clazz = !j9class 0xFFFEE42A7F00 // jdk/incubator/vector/Short128Vector
        Object flags = 0x00000000;
        J lockword = 0x0000000000000000 (offset = 0) (java/lang/Object) <hidden>
        Ljava/lang/Object; payload = !fj9object 0xffff932c8b78 (offset = 8) (jdk/internal/vm/vector/VectorSupport$VectorPayload)
}
> !fj9object 0xffff932c8b78
!J9IndexableObject 0x0000FFFF932C8B78 {
    struct J9Class* clazz = !j9arrayclass 0xFFFF941AE400   // [S
    Object flags = 0x00000000;
    U_32 size = 0x00000008;
        [0] =      0, 0x0000
        [1] =      0, 0x0000
        [2] =      0, 0x0000
        [3] =      0, 0x0000
        [4] =      0, 0x0000
        [5] =      0, 0x0000
        [6] =      0, 0x0000
        [7] =      0, 0x0000
}

I am now trying to get the trace of AbstractVector.castShape.

Akira1Saitoh commented 2 years ago

It seems either of JIT compiled Byte128Vector.slice(int) or AbstractVector.convert0(char, AbstractSpecies) has a problem.

https://github.com/ibmruntimes/openj9-openjdk-jdk18/blob/0c89bcfb32934a82973a74b49c726382ae98f552/src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java#L371

            int origin = shapeChangeOrigin(vsp, rsp, true, part);
            //System.out.println("*** origin = "+origin+", part = "+part+", lanewise");
            if (part > 0) {  // Expansion: slice first then cast.
                return slice(origin).convert0(kind, rsp);
            } else {  // Contraction: cast first then unslice.
Akira1Saitoh commented 2 years ago

It seems Byte128Vector.slice(int) returns zero vector. In ByteVector.sliceTemplate(int), mask for blending is created but this happens to be all false mask when the test fails.

https://github.com/ibmruntimes/openj9-openjdk-jdk18/blob/9bdb9425c548ea2917c5b79ecbb5788b86314c00/src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java#L2173

        VectorMask<Byte> blendMask = iota.toVector().compare(VectorOperators.LT, (broadcast((byte)(length() - origin))));