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

EliminateUselessPredicates::verify_associated_loop_nodes_are_dead fails with stress options

XMLWordPrintable

      The verification code added by JDK-8352418 fails with:

      java -Xbatch -XX:-TieredCompilation -XX:+StressDuplicateBackedge -XX:+StressUnstableIfTraps Test.java

      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/src/hotspot/share/opto/predicates.cpp:1286), pid=1940284, tid=1940302
      # assert(!loop_nodes_of_useless_template_assertion_predicates.member(loop_head)) failed: CountedLoopNode should be dead when found in OpaqueTemplateAssertionPredicateNode being marked useless
      #
      # JRE version: Java(TM) SE Runtime Environment (26.0+3) (fastdebug build 26-ea+3-153)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+3-153, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0x182b2ad] EliminateUselessPredicates::verify_associated_loop_nodes_are_dead(Unique_Node_List const&) const+0xed

      Current CompileTask:
      C2:1013 376 b jdk.internal.jimage.ImageStringsReader::stringFromByteBuffer (73 bytes)

      Stack: [0x00007b1602b00000,0x00007b1602c00000], sp=0x00007b1602bfab60, free space=1002k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x182b2ad] EliminateUselessPredicates::verify_associated_loop_nodes_are_dead(Unique_Node_List const&) const+0xed (predicates.cpp:1286)
      V [libjvm.so+0x182b848] EliminateUselessPredicates::verify_loop_nodes_of_useless_templates_assertion_predicates_are_dead() const+0xf8
      V [libjvm.so+0x151d235] PhaseIdealLoop::eliminate_useless_predicates() const+0x95
      V [libjvm.so+0x15392b0] PhaseIdealLoop::build_and_optimize()+0xb90
      V [libjvm.so+0xb48e83] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x4f3
      V [libjvm.so+0xb40246] Compile::optimize_loops(PhaseIterGVN&, LoopOptsMode)+0xb6
      V [libjvm.so+0xb42fb1] Compile::Optimize()+0xcc1
      V [libjvm.so+0xb46103] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1f33
      V [libjvm.so+0x96b657] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x467
      V [libjvm.so+0xb55538] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xb58
      V [libjvm.so+0xb56708] CompileBroker::compiler_thread_loop()+0x578
      V [libjvm.so+0x10a8e0b] JavaThread::thread_main_inner()+0x13b
      V [libjvm.so+0x1b0ca06] Thread::call_run()+0xb6
      V [libjvm.so+0x1787f38] thread_native_entry(Thread*)+0x128

            chagedorn Christian Hagedorn
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: