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

[MVT] C2 crashes with "assert(!n->is_ValueType()) failed: value types should not be split through phis"

    Details

      Description

      This bug was reported by Christian Hagedorn <hagedoch@student.ethz.ch>.

      Command line:
      java -Xbatch -noverify -XX:CompileCommand=dontinline,MyValueType::* -XX:+EnableMVT -XX:CompileCommand=compileonly,MyValueType::testBranchAllocation5 -XX:BigValueTypeThreshold=1 OwnTests

      # Internal Error (/oracle/valhalla_cp/hotspot/src/share/vm/opto/split_if.cpp:198), pid=17337, tid=17363
      # assert(!n->is_ValueType()) failed: value types should not be split through phis

      Current CompileTask:
      C2: 1311 29 b MyValueType::testBranchAllocation5 (65 bytes)

      Stack: [0x00007f6e3e1ae000,0x00007f6e3e2af000], sp=0x00007f6e3e2a8c80, free space=1003k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x136f37e] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x5ae
      V [libjvm.so+0x136ed2f] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x65
      V [libjvm.so+0xa15509] report_vm_error(char const*, int, char const*, char const*, ...)+0x10b
      V [libjvm.so+0x123ad96] PhaseIdealLoop::split_up(Node*, Node*, Node*)+0xce2
      V [libjvm.so+0x123bbe5] PhaseIdealLoop::do_split_if(Node*)+0x35f
      V [libjvm.so+0xf54f29] PhaseIdealLoop::split_if_with_blocks_post(Node*)+0x537
      V [libjvm.so+0xf55dd4] PhaseIdealLoop::split_if_with_blocks(VectorSet&, Node_Stack&)+0x1c0
      V [libjvm.so+0xf47ecc] PhaseIdealLoop::build_and_optimize(bool, bool)+0xece
      V [libjvm.so+0x998d67] PhaseIdealLoop::PhaseIdealLoop(PhaseIterGVN&, bool, bool)+0xbf
      V [libjvm.so+0x988f09] Compile::Optimize()+0x809
      V [libjvm.so+0x981971] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x11f9
      V [libjvm.so+0x7fe51f] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x143
      V [libjvm.so+0x9a1c0c] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x704
      V [libjvm.so+0x9a0a73] CompileBroker::compiler_thread_loop()+0x2c3
      V [libjvm.so+0x12ed1d3] compiler_thread_entry(JavaThread*, Thread*)+0x85
      V [libjvm.so+0x12e76ec] JavaThread::thread_main_inner()+0x174
      V [libjvm.so+0x12e7556] JavaThread::run()+0x1a4
      V [libjvm.so+0x10ede98] thread_native_entry(Thread*)+0x19e
      C [libpthread.so.0+0x76ba] start_thread+0xca

        Attachments

          Activity

            People

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

              Dates

              • Created:
                Updated:
                Resolved: