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

C2: assert(is_dominator(compute_early_ctrl(limit, limit_ctrl), pre_end)) failed: node pinned on loop exit test?

XMLWordPrintable

      The attached Java Fuzzer test starts to fail after JDK-8354383:

      To reproduce:
      $ java -XX:CompileCommand=compileonly,*Test*::* -Xbatch Test.java
      $ java -XX:CompileCommand=compileonly,*Reduced*::* -Xbatch Reduced.java

      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (c:\sb\prod\1751890963\workspace\open\src\hotspot\share\opto\loopTransform.cpp:2666), pid=54520, tid=32228
      # assert(is_dominator(compute_early_ctrl(limit, limit_ctrl), pre_end)) failed: node pinned on loop exit test?
      #
      # JRE version: Java(TM) SE Runtime Environment (26.0+6) (fastdebug build 26-ea+6-505)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+6-505, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
      # Problematic frame:
      # V [jvm.dll+0xc356b7] PhaseIdealLoop::do_range_check+0x17b7
      .................
      Command Line: -Xmx1G -XX:+IgnoreUnrecognizedVMOptions -XX:CompileCommand=quiet -XX:CompileCommand=compileonly,*Test*::* -XX:-TieredCompilation -Xbatch -XX:+UnlockDiagnosticVMOptions -XX:StressSeed=1049931235 -XX:+UnlockDiagnosticVMOptions -XX:+StressLCM -XX:+StressGCM -XX:+StressIGVN -XX:+StressCCP -XX:+StressMacroExpansion -XX:+StressLoopPeeling -XX:+VerifyLoopOptimizations -XX:VerifyIterativeGVN=10 Test_649
      ................
      C2:600 34 % !b Test_649::mainTest @ 93 (567 bytes)

      Stack: [0x0000000541500000,0x0000000541600000], sp=0x00000005415fb020, free space=1004k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [jvm.dll+0xc356b7] PhaseIdealLoop::do_range_check+0x17b7 (loopTransform.cpp:2666)
      V [jvm.dll+0xc3d6a1] IdealLoopTree::iteration_split_impl+0x4f1 (loopTransform.cpp:3500)
      V [jvm.dll+0xc3d0e8] IdealLoopTree::iteration_split+0x118 (loopTransform.cpp:3540)
      V [jvm.dll+0xc3d004] IdealLoopTree::iteration_split+0x34 (loopTransform.cpp:3524)
      V [jvm.dll+0xc3d160] IdealLoopTree::iteration_split+0x190 (loopTransform.cpp:3552)
      V [jvm.dll+0xc3d160] IdealLoopTree::iteration_split+0x190 (loopTransform.cpp:3552)
      V [jvm.dll+0xc3d004] IdealLoopTree::iteration_split+0x34 (loopTransform.cpp:3524)
      V [jvm.dll+0xc4a90e] PhaseIdealLoop::build_and_optimize+0x103e (loopnode.cpp:5019)
      V [jvm.dll+0x5c19eb] Compile::Optimize+0xbbb (compile.cpp:2503)
      V [jvm.dll+0x5be751] Compile::Compile+0x10e1 (compile.cpp:860)
      V [jvm.dll+0x4c2469] C2Compiler::compile_method+0x179 (c2compiler.cpp:144)
      V [jvm.dll+0x5dcc6e] CompileBroker::invoke_compiler_on_method+0x7ae (compileBroker.cpp:2327)
      V [jvm.dll+0x5d9fbf] CompileBroker::compiler_thread_loop+0x32f (compileBroker.cpp:1972)
      V [jvm.dll+0x92fcd8] JavaThread::thread_main_inner+0x288 (javaThread.cpp:774)
      V [jvm.dll+0x103d722] Thread::call_run+0x1b2 (thread.cpp:248)
      V [jvm.dll+0xdefb51] thread_native_entry+0xe1 (os_windows.cpp:562)
      C [ucrtbase.dll+0x26b4c] (no source info available)
      C [KERNEL32.DLL+0x14cb0] (no source info available)
      C [ntdll.dll+0x7edcb] (no source info available)

        1. FuzzerUtils.java
          13 kB
          Christian Hagedorn
        2. hs_err_pid54520.log
          99 kB
          Christian Hagedorn
        3. Reduced.java
          0.8 kB
          Christian Hagedorn
        4. Test.java
          8 kB
          Christian Hagedorn

            roland Roland Westrelin
            chagedorn Christian Hagedorn
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: