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

Crash in C2 compiler at Node::rematerialize

    Details

    • Subcomponent:
    • Introduced In Version:
    • Resolved In Build:
      b11
    • CPU:
      x86_64
    • OS:
      linux
    • Verification:
      Verified

      Backports

        Description

        The crash is reproducible in JDK6 and JDK7. In JDK8 and JDK9 the crash is not reproducible if TieredCompilation flag is set (src/cpu/x86/vm/c2_globals_x86.hpp).

        Crash reproducer attached.
        java -d64 -XX:-TieredCompilation -cp lib/runtime/*:build/classes/ org.openbravo.JasperC2CompilerCrash

        Comment from Vladimir Kozlov:
        ==================================================================================
        Looks like we will not convert a loop into Counted (canonical) loop if predicate is not present so 5091921 problem will not be created:

            // Loop limit check predicate should be near the loop.
            ProjNode *limit_check_proj = find_predicate_insertion_point(init_control, Deoptimization::Reason_loop_limit_check);
            if (!limit_check_proj) {
              // The limit check predicate is not generated if this method trapped here before.
        #ifdef ASSERT
              if (TraceLoopLimitCheck) {
                tty->print("missing loop limit check:");
                loop->dump_head();
                x->dump(1);
              }
        #endif
              return false;
            }

        The same is for a loop predication.
        ==================================================================================

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  kvn Vladimir Kozlov
                  Reporter:
                  sgabdura Sergey Gabdurakhmanov (Inactive)
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  9 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: