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

[JVMCI] MethodProfileWidth flag is broken

    Details

    • Subcomponent:
    • Resolved In Build:
      b15

      Backports

        Description

        VM crashes if not 0 value is used for MethodProfileWidth flag:

        java -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:MethodProfileWidth=2 -version

        FAILED verify : actual mdp 0x7f6b1c17dbe8 expected mdp 0x7f6b1c17dbc8 @ bci 11
          actual di 120 expected di 88
          actual bci is 15 expected bci 11
        method data for {method} {0x000000080035bf68} 'equals' '(Ljava/lang/Object;)Z' in 'java/lang/String'
        0 bci: 2 BranchData taken(1) displacement(32)
                                            not taken(0)
        32 bci: 8 ReceiverTypeData count(0) nonprofiled_count(0) entries(1)
                                            'java/lang/String'(1 1.00)
        88 bci: 11 BranchData taken(0) displacement(168)
                                            not taken(0)
        120 bci: 15 ReceiverTypeData count(0) nonprofiled_count(0) entries(0)
        176 bci: 22 BranchData taken(0) displacement(64)
                                            not taken(0)
        208 bci: 33 BranchData taken(0) displacement(48)
                                            not taken(0)
        240 bci: 44 CounterData count(0)
        --- Extra data:
        304 bci: 0 ArgInfoData 0x0 0x0
        0 nofast_aload_0
        1 aload_1
        2 if_acmpne 7
          0 bci: 2 BranchData taken(1) displacement(32)
                                            not taken(0)
        5 iconst_1
        6 ireturn
        7 aload_1
        8 instanceof 10 <java/lang/String>
          32 bci: 8 ReceiverTypeData count(0) nonprofiled_count(0) entries(1)
                                            'java/lang/String'(1 1.00)
        11 ifeq 48
          88 bci: 11 BranchData taken(0) displacement(168)
                                            not taken(0)
        14 aload_1
        15 checkcast 10 <java/lang/String>
          120 bci: 15 ReceiverTypeData count(0) nonprofiled_count(0) entries(0)
        18 astore_2
        19 getstatic 34 <java/lang/String.COMPACT_STRINGS/Z>
        22 ifeq 36
          176 bci: 22 BranchData taken(0) displacement(64)
                                            not taken(0)
        25 nofast_aload_0
        26 nofast_getfield 15 <java/lang/String.coder/B>
        29 aload_2
        30 nofast_getfield 15 <java/lang/String.coder/B>
        33 if_icmpne 48
          208 bci: 33 BranchData taken(0) displacement(48)
                                            not taken(0)
        36 nofast_aload_0
        37 nofast_getfield 9 <java/lang/String.value/[B>
        40 aload_2
        41 nofast_getfield 9 <java/lang/String.value/[B>
        44 invokestatic 182 <java/lang/StringLatin1.equals([B[B)Z>
          240 bci: 44 CounterData count(0)
        47 ireturn
        48 iconst_0
        49 ireturn
        # To suppress the following error report, specify this argument
        # after -XX: or in .hotspotrc: SuppressErrorAt=/interpreterRuntime.cpp:1164
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (open/src/hotspot/share/interpreter/interpreterRuntime.cpp:1164), pid=23889, tid=23890
        # assert(mdp == mdp2) failed: wrong mdp
        #

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  kvn Vladimir Kozlov
                  Reporter:
                  kvn Vladimir Kozlov
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: