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

C1: assert(false) failed: unknown register on x86_32 only with -XX:+TraceLinearScanLevel=4

    XMLWordPrintable

    Details

    • Subcomponent:
    • Introduced In Build:
      b13
    • Introduced In Version:
      16
    • Resolved In Build:
      b20

      Description

      (synopsis is provisional, change as you see fit)

      $ CONF=linux-x86-server-fastdebug make images run-test TEST=compiler/c1/TestTraceLinearScanLevel.java

      walk_to(4) **************************************************************
      active to handled 5 fixed [ecx|I] 5 -1 [0, 4[ "no definition"
      active to inactive 3 fixed [eax|I] 3 171 [0, 1[ [78, 80[ "no spill store"
      +++++ activating interval -1 object [ANY] 161 5 [4, 38[ 4 M 38 M "no spill store"
            split_parent: 161, insert_move_when_activated: 0
            normal allocation of register
      trying to find free register for -1 object [ANY] 161 5 [4, 38[ 4 M 38 M "no spill store"
            state of registers:
            reg 0 ([esi|I]): use_pos: 2147483647
            reg 1 ([edi|I]): use_pos: 2147483647
            reg 2 ([ebx|I]): use_pos: 2147483647
            reg 3 ([eax|I]): use_pos: 78
            reg 4 ([edx|I]): use_pos: 2147483647
            reg 5 ([ecx|I]): use_pos: 2147483647
            hint registers 5 ([ecx|I]), 6 (# To suppress the following error report, specify this argument
      # after -XX: or in .hotspotrc: SuppressErrorAt=/c1_LinearScan.cpp:3234
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/home/shade/trunks/jdk/src/hotspot/share/c1/c1_LinearScan.cpp:3234), pid=2618467, tid=2618483
      # assert(false) failed: unknown register
      #
      # JRE version: OpenJDK Runtime Environment (16.0) (fastdebug build 16-internal+0-adhoc.shade.jdk)
      # Java VM: OpenJDK Server VM (fastdebug 16-internal+0-adhoc.shade.jdk, mixed mode, tiered, g1 gc, linux-x86)
      # Problematic frame:
      # V [libjvm.so+0x631910] LinearScan::print_reg_num(outputStream*, int)+0xc0
      #

      I suspect the refactoring in JDK-8251093 introduced this.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              chagedorn Christian Hagedorn
              Reporter:
              shade Aleksey Shipilev
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: