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

[lworld] C2 compilation fails with assert "should have been removed from the graph"

XMLWordPrintable

      primitive class a {
        short b = 2;
        int c = 8;
      }
      class MainClass {
        a[] d = {new a()};
        a e;
        byte f;
        byte g(int h) {
          a i = new a();
          for (int j = 0; j < 6; ++j) {
            a[] k = {};
            if (i.b < 0101)
              i = e;
            for (int l = 0; l < 9; ++l) {
              a m = new a();
              i = m;
            }
          }
          if (d[0].c > 1)
            for (int n = 0; n < 7; ++n)
              ;
          return f;
        }
        public static void main(String[] args) {
          MainClass o = new MainClass();
          for (int p = 0;;)
            o.g(p);
        }
      }


      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/oracle/valhalla/open/src/hotspot/share/opto/compile.cpp:2282), pid=308339, tid=308352
      # assert(n->adr_type() != TypeAryPtr::INLINES) failed: should have been removed from the graph
      #
      # JRE version: Java(TM) SE Runtime Environment (17.0) (fastdebug build 17-lworld3ea+0-2021-01-20-1042597.tobias...)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 17-lworld3ea+0-2021-01-20-1042597.tobias..., mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xa3375b] Compile::adjust_flattened_array_access_aliases(PhaseIterGVN&) [clone .part.0]+0xf4b

      Current CompileTask:
      C2: 244 259 % 4 MainClass::g @ 35 (94 bytes)

      Stack: [0x00007f778c537000,0x00007f778c638000], sp=0x00007f778c6331f0, 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+0xa3375b] Compile::adjust_flattened_array_access_aliases(PhaseIterGVN&) [clone .part.0]+0xf4b
      V [libjvm.so+0xa494c8] Compile::Optimize()+0x578
      V [libjvm.so+0xa4c493] Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x1a53
      V [libjvm.so+0x861c98] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1f8
      V [libjvm.so+0xa5c471] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xea1
      V [libjvm.so+0xa5d0f8] CompileBroker::compiler_thread_loop()+0x5a8
      V [libjvm.so+0x1921766] JavaThread::thread_main_inner()+0x256
      V [libjvm.so+0x1927bf0] Thread::call_run()+0x100
      V [libjvm.so+0x15eaa66] thread_native_entry(Thread*)+0x116

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

              Created:
              Updated:
              Resolved: