Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8309894

compiler/vectorapi/VectorLogicalOpIdentityTest.java fails on SVE system with UseSVE=0

XMLWordPrintable

    • b05
    • aarch64

        Some sub tests fails with IR test failure when this test is run on SVE systems with "-XX:UseSVE=0".
        Here is part of the failure log:

        ```
        Command Line:
        /home/ent-user/ci-scripts/jdk_build/build-fastdebug/images/jdk/bin/java -DReproduce=true -cp /home/ent-user/ci-scripts/jdk_build/jtwork_rerun/classes/compiler/vectorapi/VectorLogicalOpIdentityTest.d:/home/ent-user/ci-scripts/jdk_build/jdk_src/test/hotspot/jtreg/compiler/vectorapi:/home/ent-user/ci-scripts/jdk_build/jtwork_rerun/classes/test/lib:/home/ent-user/ci-scripts/jdk_build/jdk_src/test/lib:/home/ent-user/ci-scripts/jdk_build/jtwork_rerun/classes:/home/ent-user/ci-scripts/jdk_build/jdk_src/test/hotspot/jtreg:/home/ent-user/jtreg/jtreg-git/build/images/jtreg/lib/javatest.jar:/home/ent-user/jtreg/jtreg-git/build/images/jtreg/lib/jtreg.jar -Djava.library.path=/home/ent-user/ci-scripts/jdk_build/build-fastdebug/images/test/hotspot/jtreg/native -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -ea -esa -Xmx768m -server -XX:UseSVE=0 -Djdk.test.docker.image.name=ubuntu -Djdk.test.docker.image.version=22.04 -Djdk.incubator.vector.test.loop-iterations=500 -DweakAttempts=100000 -Dir.framework.server.port=35695 --add-modules=jdk.incubator.vector -XX:+PrintCompilation -XX:+UnlockDiagnosticVMOptions -XX:+LogCompilation -XX:CompilerDirectivesFile=test-vm-compile-commands-pid-215737.log -XX:CompilerDirectivesLimit=391 -XX:-OmitStackTraceInFastThrow -DShouldDoIRVerification=true -XX:-BackgroundCompilation -XX:CompileCommand=quiet compiler.lib.ir_framework.test.TestVM compiler.vectorapi.VectorLogicalOpIdentityTest

        One or more @IR rules failed:

        Failed IR Rules (6) of Methods (6)
        ----------------------------------
        1) Method "public static void compiler.vectorapi.VectorLogicalOpIdentityTest.testAndMaskSameValue1()" - [Failed IR rules: 1]:
           * @IR rule 1: "@compiler.lib.ir_framework.IR(phase={DEFAULT}, applyIfCPUFeatureAnd={}, applyIfCPUFeatureOr={"sve", "true", "avx512", "true"}, applyIf={}, applyIfCPUFeature={}, counts={"_#AND_V#_", "1"}, failOn={}, applyIfAnd={}, applyIfOr={}, applyIfNot={})"
             > Phase "PrintIdeal":
               - counts: Graph contains wrong number of nodes:
                 * Constraint 1: "(\d+(\s){2}(AndV.*)+(\s){2}===.*)"
                   - Failed comparison: [found] 2 = 1 [given]
                     - Matched nodes (2):
                       * 359 AndV === _ 358 458 [[ 239 ]] #vectorx[4]:{int} !jvms: IntVector::lanewiseTemplate @ bci:192 (line 834) IntMaxVector::lanewise @ bci:9 (line 276) IntMaxVector::lanewise @ bci:4 (line 41) VectorLogicalOpIdentityTest::testAndMaskSameValue1 @ bci:47 (line 311)
                       * 457 AndV === _ 205 458 [[ 358 ]] #vectorx[4]:{int} !jvms: IntVector::lanewiseTemplate @ bci:192 (line 834) IntMaxVector::lanewise @ bci:9 (line 276) IntMaxVector::lanewise @ bci:4 (line 41) VectorLogicalOpIdentityTest::testAndMaskSameValue1 @ bci:39 (line 310)

        2) Method "public static void compiler.vectorapi.VectorLogicalOpIdentityTest.testAndMaskSameValue2()" - [Failed IR rules: 1]:
           * @IR rule 1: "@compiler.lib.ir_framework.IR(phase={DEFAULT}, applyIfCPUFeatureAnd={}, applyIfCPUFeatureOr={"sve", "true", "avx512", "true"}, applyIf={}, applyIfCPUFeature={}, counts={"_#AND_V#_", "1"}, failOn={}, applyIfAnd={}, applyIfOr={}, applyIfNot={})"
             > Phase "PrintIdeal":
               - counts: Graph contains wrong number of nodes:
                 * Constraint 1: "(\d+(\s){2}(AndV.*)+(\s){2}===.*)"
                   - Failed comparison: [found] 2 = 1 [given]
                     - Matched nodes (2):
                       * 267 AndV === _ 266 184 [[ 160 ]] #vectorx[2]:{long} !jvms: LongVector::lanewiseTemplate @ bci:193 (line 792) LongMaxVector::lanewise @ bci:9 (line 271) LongMaxVector::lanewise @ bci:4 (line 41) VectorLogicalOpIdentityTest::testAndMaskSameValue2 @ bci:47 (line 332)
                       * 361 AndV === _ 184 432 [[ 266 ]] #vectorx[2]:{long} !jvms: LongVector::lanewiseTemplate @ bci:193 (line 792) LongMaxVector::lanewise @ bci:9 (line 271) LongMaxVector::lanewise @ bci:4 (line 41) VectorLogicalOpIdentityTest::testAndMaskSameValue2 @ bci:39 (line 331)
        ```
        Cause is these tests should be run on sve hardware with sve enabled. Option "-XX:UseSVE=0" will disable the SVE without changing the cpu feature. So these tests run since the cpu feature is matched, but the JVM environment is not sve.

              xgong Xiaohong Gong (Inactive)
              xgong Xiaohong Gong (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: