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

C2 SuperWord: data node in loop has no input in loop: replace assert with bailout

    XMLWordPrintable

Details

    • b13

    Description

      The following test failed in the JDK23 CI:

      applications/javafuzzer/BigTest.java

      Here's a snippet from the log file:

      Summary of the JavaFuzzer run:
      ------------------------------
      Host: jpg-mac-x64-623.oraclecorp.com
      Tests: 12 x 300
      Args: -conf config.yml

      Started at: Sat Mar 2 13:33:26 GMT 2024


      r9- 300: 158 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 142 Reference Java failures
      r7- 300: 170 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 130 Reference Java failures
      r2- 300: 182 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 118 Reference Java failures
      r11- 300: 172 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 128 Reference Java failures
      r3- 300: 173 passed, 1 crashes, 0 fails, 0 hangs, 0 incorrect tests, 126 Reference Java failures
      r5- 300: 178 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 122 Reference Java failures
      r4- 300: 169 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 131 Reference Java failures
      r12- 300: 171 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 129 Reference Java failures
      r8- 300: 174 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 126 Reference Java failures
      r6- 300: 159 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 141 Reference Java failures
      r10- 300: 173 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 127 Reference Java failures
      r1- 300: 169 passed, 0 crashes, 0 fails, 0 hangs, 0 incorrect tests, 131 Reference Java failures

      Finished at: Sun Mar 3 03:58:10 GMT 2024


      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/System/Volumes/Data/mesos/work_dir/slaves/412fde1c-3e26-4c3d-b41e-bab008e2c85d-S7417/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5e6fca58-0a7d-4372-bd7e-571b440fd538/runs/8b916779-a0ea-4a5e-b1c4-9fdf957d2062/workspace/open/src/hotspot/share/opto/superword.cpp:2970), pid=20077, tid=24323
      # assert(found) failed: every non-cfg node must have an input that is also inside the loop
      #
      # JRE version: Java(TM) SE Runtime Environment (23.0+13) (fastdebug build 23-ea+13-901)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 23-ea+13-901, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, bsd-amd64)
      # No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #

      --------------- S U M M A R Y ------------


      ----------System.err:(15/908)----------
      java.lang.RuntimeException: assertEquals expected: 1 but was: 2
      at jdk.test.lib.Asserts.fail(Asserts.java:691)
      at jdk.test.lib.Asserts.assertEquals(Asserts.java:204)
      at jdk.test.lib.Asserts.assertEquals(Asserts.java:191)
      at applications.javafuzzer.JavaFuzzerRunner.reportResults(JavaFuzzerRunner.java:264)
      at applications.javafuzzer.JavaFuzzerRunner.runWithConfigurations(JavaFuzzerRunner.java:285)
      at applications.javafuzzer.JavaFuzzerRunner.main(JavaFuzzerRunner.java:307)
      at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
      at java.base/java.lang.reflect.Method.invoke(Method.java:580)
      at com.sun.javatest.regtest.agent.MainActionHelper$AgentVMRunnable.run(MainActionHelper.java:333)
      at java.base/java.lang.Thread.run(Thread.java:1575)

      JavaTest Message: Test threw exception: java.lang.RuntimeException
      JavaTest Message: shutting down test

      result: Failed. Execution failed: `main' threw exception: java.lang.RuntimeException: assertEquals expected: 1 but was: 2

      Here's the crashing thread's stack:

      --------------- T H R E A D ---------------

      Current thread (0x00007ff5f7015610): JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=24323, stack(0x0000700007045000,0x0000700007145000) (1024K)]


      Current CompileTask:
      C2:376 4 % b Test::mainTest @ 46 (336 bytes)

      Stack: [0x0000700007045000,0x0000700007145000], sp=0x0000700007140ae0, free space=1006k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.dylib+0x1239374] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x5a4 (superword.cpp:2970)
      V [libjvm.dylib+0x1239b48] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x38
      V [libjvm.dylib+0x652ce4] report_vm_error(char const*, int, char const*, char const*, ...)+0xb4
      V [libjvm.dylib+0x1112e76] VLoopBody::construct()+0xd56
      V [libjvm.dylib+0x11f5437] VLoopAnalyzer::setup_submodules()+0xc7
      V [libjvm.dylib+0xd7342f] PhaseIdealLoop::auto_vectorize(IdealLoopTree*, VSharedData&)+0x21f
      V [libjvm.dylib+0xd54413] PhaseIdealLoop::build_and_optimize()+0xcd3
      V [libjvm.dylib+0x5b81a8] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x58
      V [libjvm.dylib+0x5b865d] Compile::optimize_loops(PhaseIterGVN&, LoopOptsMode)+0x6d
      V [libjvm.dylib+0x5b173f] Compile::Optimize()+0xb4f
      V [libjvm.dylib+0x5af78b] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x161b
      V [libjvm.dylib+0x479b28] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1b8
      V [libjvm.dylib+0x5cf95f] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xaaf
      V [libjvm.dylib+0x5ceaa7] CompileBroker::compiler_thread_loop()+0x357
      V [libjvm.dylib+0x9b0305] JavaThread::thread_main_inner()+0x1a5
      V [libjvm.dylib+0x1180dbc] Thread::call_run()+0xbc
      V [libjvm.dylib+0xefde42] thread_native_entry(Thread*)+0x122
      C [libsystem_pthread.dylib+0x61d3] _pthread_start+0x7d
      C [libsystem_pthread.dylib+0x1bd3] thread_start+0xf

      Attachments

        1. FuzzerUtils.java
          13 kB
        2. hs_err_pid20077.log
          124 kB
        3. Reduced.java
          0.4 kB
        4. Test.java
          7 kB

        Issue Links

          Activity

            People

              epeter Emanuel Peter
              dcubed Daniel Daugherty
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: