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

C2 loop unrolling fails due to unexpected graph shape

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1
    • Resolution: Fixed
    • Affects Version/s: 8u112, 9
    • Fix Version/s: 9
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Resolved In Build:
      b114
    • Verification:
      Verified

      Description

      Compilation fails in loop optimizations:

      # Internal Error (/scratch/jprt/T/P1/075053.tohartma/s/hotspot/src/share/vm/opto/loopTransform.cpp:1322), pid=4930, tid=5016
      # Error: assert(cmp->Opcode() == Op_CmpI) failed

      Current CompileTask:
      C2: 29619 2821 b IeeeRecommendedTests::testFloatBooleanMethods (270 bytes)

      Stack: [0x00007f3665d37000,0x00007f3665e38000], sp=0x00007f3665e32220, free space=1004k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x13d4b85] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x155;; VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x155
      V [libjvm.so+0x13d58bf] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f;; VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f
      V [libjvm.so+0x95223d] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd;; report_vm_error(char const*, int, char const*, char const*, ...)+0xdd
      V [libjvm.so+0xee88b2] PhaseIdealLoop::do_unroll(IdealLoopTree*, Node_List&, bool)+0x472;; PhaseIdealLoop::do_unroll(IdealLoopTree*, Node_List&, bool)+0x472
      V [libjvm.so+0xeed4b5] IdealLoopTree::iteration_split_impl(PhaseIdealLoop*, Node_List&)+0x225;; IdealLoopTree::iteration_split_impl(PhaseIdealLoop*, Node_List&)+0x225
      V [libjvm.so+0xeed777] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x187;; IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x187
      V [libjvm.so+0xeed66a] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x7a;; IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x7a
      V [libjvm.so+0xeed66a] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x7a;; IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x7a
      V [libjvm.so+0xeed612] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x22;; IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x22
      V [libjvm.so+0xf0a9b1] PhaseIdealLoop::build_and_optimize(bool, bool)+0xe91;; PhaseIdealLoop::build_and_optimize(bool, bool)+0xe91
      V [libjvm.so+0x8c8b63] Compile::Optimize()+0xd83;; Compile::Optimize()+0xd83
      V [libjvm.so+0x8ca1fe] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x139e;; Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x139e
      V [libjvm.so+0x72fa22] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x2d2;; C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x2d2
      V [libjvm.so+0x8d56b4] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x554;; CompileBroker::invoke_compiler_on_method(CompileTask*)+0x554
      V [libjvm.so+0x8d6d28] CompileBroker::compiler_thread_loop()+0x458;; CompileBroker::compiler_thread_loop()+0x458
      V [libjvm.so+0x133ecc9] JavaThread::thread_main_inner()+0x1c9;; JavaThread::thread_main_inner()+0x1c9
      V [libjvm.so+0x133ef26] JavaThread::run()+0x1c6;; JavaThread::run()+0x1c6
      V [libjvm.so+0x10c6b52] java_start(Thread*)+0xd2;; java_start(Thread*)+0xd2
      C [libpthread.so.0+0x7851]

        Attachments

        1. hs_err_pid10974.log
          62 kB
        2. failure_2.xml
          779 kB
        3. failure_1.xml
          872 kB

          Issue Links

            Activity

              People

              • Assignee:
                zmajo Zoltan Majo (Inactive)
                Reporter:
                thartmann Tobias Hartmann
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: