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

[lworld] Escape analysis fails due to oop access to flat array

XMLWordPrintable

      Running TestNullableArrays with -Xcomp crashes with:

      # Internal Error (/oracle/valhalla_int/open/src/hotspot/share/opto/escape.cpp:344), pid=32409, tid=32422
      # assert((ptnode_adr(adr->_idx) == __null || ptnode_adr(adr->_idx)->as_Field()->is_oop())) failed: sanity
      #
      # JRE version: Java(TM) SE Runtime Environment (16.0) (fastdebug build 16-lworld3ea+0-2020-07-27-1155078.tobias...)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-lworld3ea+0-2020-07-27-1155078.tobias..., mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xaa5d68] ConnectionGraph::add_objload_to_connection_graph(Node*, Unique_Node_List*)+0x3c8

      Current CompileTask:
      C2: 748 30 !b 4 compiler.valhalla.inlinetypes.TestNullableArrays::test80_verifier (69 bytes)

      Stack: [0x00007f828cce9000,0x00007f828cdea000], sp=0x00007f828cde51b0, free space=1008k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0xaa5d68] ConnectionGraph::add_objload_to_connection_graph(Node*, Unique_Node_List*)+0x3c8
      V [libjvm.so+0xaa86b8] ConnectionGraph::add_node_to_connection_graph(Node*, Unique_Node_List*)+0x4a8
      V [libjvm.so+0xab2bee] ConnectionGraph::compute_escape()+0x6be
      V [libjvm.so+0xab4c8a] ConnectionGraph::do_analysis(Compile*, PhaseIterGVN*)+0x12a
      V [libjvm.so+0x944486] Compile::Optimize()+0x8e6
      V [libjvm.so+0x946551] Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x16a1
      V [libjvm.so+0x77e5e5] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x175
      V [libjvm.so+0x955920] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xd60
      V [libjvm.so+0x9566e8] CompileBroker::compiler_thread_loop()+0x6b8
      V [libjvm.so+0x17acf8c] JavaThread::thread_main_inner()+0x21c
      V [libjvm.so+0x17b2d50] Thread::call_run()+0x100
      V [libjvm.so+0x1490b06] thread_native_entry(Thread*)+0x116

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

              Created:
              Updated:
              Resolved: