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

C2: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit

    XMLWordPrintable

Details

    • b27

    Backports

      Description

        The attached fuzzer test fails with the following assertion:

        To reproduce:
        $ java -Xcomp -XX:-TieredCompilation -XX:CompileOnly=Test Test.java

        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14679/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/c1dd57b4-7913-4a59-8195-379ebba9d372/runs/99043d48-c02f-489a-b45d-2225a0c85e9a/workspace/open/src/hotspot/share/opto/node.cpp:89), pid=12691, tid=12710
        # assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
        #
        # JRE version: Java(TM) SE Runtime Environment (16.0+26) (fastdebug build 16-ea+26-1706)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-ea+26-1706, compiled mode, sharing, compressed oops, g1 gc, linux-amd64)
        # Problematic frame:
        # V [libjvm.so+0x14fc884] Node::verify_construction()+0x184
        ...........
        Command Line: -Xcomp -XX:-TieredCompilation -XX:CompileOnly=Test --add-modules=ALL-DEFAULT jdk.compiler/com.sun.tools.javac.launcher.Main ../459/r3-167/Test.java
        ...........
        Current thread (0x00007f67902616d0): JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=12710, stack(0x00007f677c8cc000,0x00007f677c9cd000)]


        Current CompileTask:
        C2: 5005 87 b Test::vMeth (220 bytes)

        Stack: [0x00007f677c8cc000,0x00007f677c9cd000], sp=0x00007f677c9c7090, free space=1004k
        Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
        V [libjvm.so+0x14fc884] Node::verify_construction()+0x184
        V [libjvm.so+0x150c68f] Node::clone() const+0x2ef
        V [libjvm.so+0x132108f] PhaseIdealLoop::clone_for_use_outside_loop(IdealLoopTree*, Node*, Node_List&)+0x2bf
        V [libjvm.so+0x1323e7a] PhaseIdealLoop::partial_peel(IdealLoopTree*, Node_List&)+0x183a
        V [libjvm.so+0x12e0e5d] IdealLoopTree::iteration_split_impl(PhaseIdealLoop*, Node_List&) [clone .part.0]+0xbd
        V [libjvm.so+0x12e17fb] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x13b
        V [libjvm.so+0x130df07] PhaseIdealLoop::build_and_optimize(LoopOptsMode)+0xcb7
        V [libjvm.so+0x9fe5fe] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x36e
        V [libjvm.so+0x9fa69c] Compile::Optimize()+0x128c
        V [libjvm.so+0x9fc658] Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x17e8
        V [libjvm.so+0x82e75e] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1ce
        V [libjvm.so+0xa0c7e8] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xe08
        V [libjvm.so+0xa0d338] CompileBroker::compiler_thread_loop()+0x5a8
        V [libjvm.so+0x188d426] JavaThread::thread_main_inner()+0x256
        V [libjvm.so+0x1893db0] Thread::call_run()+0x100
        V [libjvm.so+0x1574796] thread_native_entry(Thread*)+0x116

        Attachments

          1. FuzzerUtils.java
            13 kB
            Christian Hagedorn
          2. hs_err_pid12691.log
            70 kB
            Christian Hagedorn
          3. MainClass.java
            0.6 kB
            Tobias Hartmann
          4. Test_8256934.java
            0.8 kB
            Fairoz Matte
          5. Test.java
            7 kB
            Christian Hagedorn

          Issue Links

            Activity

              People

                chagedorn Christian Hagedorn
                chagedorn Christian Hagedorn
                Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: