class jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData extends jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData
  super_class: jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData
{
  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 597
            ldc Ljdk/vm/ci/hotspot/HotSpotMethodData;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(jdk.vm.ci.hotspot.HotSpotMethodData$VMState, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$VMState state
        start local 2 // int tag
         0: .line 600
            aload 0 /* this */
            aload 1 /* state */
            iload 2 /* tag */
            aload 1 /* state */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.virtualCallDataSize:I
            invokespecial jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData.<init>:(Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;II)V
         1: .line 601
            return
        end local 2 // int tag
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$VMState state
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    2     1  state  Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            0    2     2    tag  I
    MethodParameters:
       Name  Flags
      state  
      tag    

  protected void <init>(jdk.vm.ci.hotspot.HotSpotMethodData$VMState, int, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$VMState state
        start local 2 // int tag
        start local 3 // int staticSize
         0: .line 604
            aload 0 /* this */
            aload 1 /* state */
            iload 2 /* tag */
            iload 3 /* staticSize */
            invokespecial jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData.<init>:(Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;II)V
         1: .line 605
            return
        end local 3 // int staticSize
        end local 2 // int tag
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$VMState state
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    2     1       state  Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            0    2     2         tag  I
            0    2     3  staticSize  I
    MethodParameters:
            Name  Flags
      state       
      tag         
      staticSize  

  public int getExecutionCount(jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 2 // int position
         0: .line 609
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.config:Ljdk/vm/ci/hotspot/HotSpotVMConfig;
            getfield jdk.vm.ci.hotspot.HotSpotVMConfig.typeProfileWidth:I
            istore 3 /* typeProfileWidth */
        start local 3 // int typeProfileWidth
         1: .line 611
            lconst_0
            lstore 4 /* total */
        start local 4 // long total
         2: .line 612
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: goto 6
         4: .line 613
      StackMap locals: int long int
      StackMap stack:
            lload 4 /* total */
            aload 1 /* data */
            iload 2 /* position */
            aload 0 /* this */
            iload 6 /* i */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getTypeCountOffset:(I)I
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData.readUnsignedInt:(II)J
            ladd
            lstore 4 /* total */
         5: .line 612
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 3 /* typeProfileWidth */
            if_icmplt 4
        end local 6 // int i
         7: .line 616
            lload 4 /* total */
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* position */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getCounterValue:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)I
            i2l
            ladd
            lstore 4 /* total */
         8: .line 617
            lload 4 /* total */
            invokestatic jdk.vm.ci.hotspot.HotSpotMethodData$VMState.truncateLongToInt:(J)I
            ireturn
        end local 4 // long total
        end local 3 // int typeProfileWidth
        end local 2 // int position
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    9     1              data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0    9     2          position  I
            1    9     3  typeProfileWidth  I
            2    9     4             total  J
            3    7     6                 i  I
    MethodParameters:
          Name  Flags
      data      
      position  

  protected long getTypesNotRecordedExecutionCount(jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 2 // int position
         0: .line 622
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* position */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getCounterValue:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)I
            i2l
            lreturn
        end local 2 // int position
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    1     1      data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0    1     2  position  I
    MethodParameters:
          Name  Flags
      data      
      position  

  private long getMethodsNotRecordedExecutionCount(jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 2 // int position
         0: .line 626
            aload 1 /* data */
            iload 2 /* position */
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.state:Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.nonprofiledCountOffset:I
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData.readUnsignedIntAsSignedInt:(II)I
            i2l
            lreturn
        end local 2 // int position
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    1     1      data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0    1     2  position  I
    MethodParameters:
          Name  Flags
      data      
      position  

  public jdk.vm.ci.meta.JavaMethodProfile getMethodProfile(jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/meta/JavaMethodProfile;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 2 // int position
         0: .line 631
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* position */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getRawMethodProfile:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile;
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.createMethodProfile:(Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile;)Ljdk/vm/ci/meta/JavaMethodProfile;
            areturn
        end local 2 // int position
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    1     1      data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0    1     2  position  I
    MethodParameters:
          Name  Flags
      data      
      position  

  private jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile<jdk.vm.ci.meta.ResolvedJavaMethod> getRawMethodProfile(jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=3
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 2 // int position
         0: .line 635
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.config:Ljdk/vm/ci/hotspot/HotSpotVMConfig;
            getfield jdk.vm.ci.hotspot.HotSpotVMConfig.methodProfileWidth:I
            istore 3 /* profileWidth */
        start local 3 // int profileWidth
         1: .line 637
            iload 3 /* profileWidth */
            anewarray jdk.vm.ci.meta.ResolvedJavaMethod
            astore 4 /* methods */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaMethod[] methods
         2: .line 638
            iload 3 /* profileWidth */
            newarray 11
            astore 5 /* counts */
        start local 5 // long[] counts
         3: .line 639
            lconst_0
            lstore 6 /* totalCount */
        start local 6 // long totalCount
         4: .line 640
            iconst_0
            istore 8 /* entries */
        start local 8 // int entries
         5: .line 642
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         6: goto 15
         7: .line 643
      StackMap locals: jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData jdk.vm.ci.hotspot.HotSpotMethodData int int jdk.vm.ci.meta.ResolvedJavaMethod[] long[] long int int
      StackMap stack:
            aload 1 /* data */
            iload 2 /* position */
            aload 0 /* this */
            iload 9 /* i */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getMethodOffset:(I)I
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData.readMethod:(II)Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
            astore 10 /* method */
        start local 10 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
         8: .line 644
            aload 10 /* method */
            ifnull 14
         9: .line 645
            aload 4 /* methods */
            iload 8 /* entries */
            aload 10 /* method */
            aastore
        10: .line 646
            aload 1 /* data */
            iload 2 /* position */
            aload 0 /* this */
            iload 9 /* i */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getMethodCountOffset:(I)I
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData.readUnsignedInt:(II)J
            lstore 11 /* count */
        start local 11 // long count
        11: .line 647
            lload 6 /* totalCount */
            lload 11 /* count */
            ladd
            lstore 6 /* totalCount */
        12: .line 648
            aload 5 /* counts */
            iload 8 /* entries */
            lload 11 /* count */
            lastore
        13: .line 650
            iinc 8 /* entries */ 1
        end local 11 // long count
        end local 10 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
        14: .line 642
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 9 /* i */
            iload 3 /* profileWidth */
            if_icmplt 7
        end local 9 // int i
        16: .line 654
            lload 6 /* totalCount */
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* position */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getMethodsNotRecordedExecutionCount:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)J
            ladd
            lstore 6 /* totalCount */
        17: .line 659
            iload 8 /* entries */
            iconst_1
            if_icmpne 19
        18: .line 660
            aload 5 /* counts */
            iconst_0
            lload 6 /* totalCount */
            lastore
        19: .line 663
      StackMap locals:
      StackMap stack:
            new jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile
            dup
            iload 8 /* entries */
            aload 4 /* methods */
            aload 5 /* counts */
            lload 6 /* totalCount */
            invokespecial jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.<init>:(I[Ljava/lang/Object;[JJ)V
            areturn
        end local 8 // int entries
        end local 6 // long totalCount
        end local 5 // long[] counts
        end local 4 // jdk.vm.ci.meta.ResolvedJavaMethod[] methods
        end local 3 // int profileWidth
        end local 2 // int position
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0   20     1          data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0   20     2      position  I
            1   20     3  profileWidth  I
            2   20     4       methods  [Ljdk/vm/ci/meta/ResolvedJavaMethod;
            3   20     5        counts  [J
            4   20     6    totalCount  J
            5   20     8       entries  I
            6   16     9             i  I
            8   14    10        method  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
           11   14    11         count  J
    Signature: (Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile<Ljdk/vm/ci/meta/ResolvedJavaMethod;>;
    MethodParameters:
          Name  Flags
      data      
      position  

  private jdk.vm.ci.meta.JavaMethodProfile createMethodProfile(jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile<jdk.vm.ci.meta.ResolvedJavaMethod>);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile;)Ljdk/vm/ci/meta/JavaMethodProfile;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=8, args_size=2
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile profile
         0: .line 667
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            ifle 1
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.totalCount:J
            lconst_0
            lcmp
            ifgt 2
         1: .line 668
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         2: .line 671
      StackMap locals:
      StackMap stack:
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            anewarray jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod
            astore 2 /* pmethods */
        start local 2 // jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod[] pmethods
         3: .line 672
            dconst_0
            dstore 3 /* totalProbability */
        start local 3 // double totalProbability
         4: .line 673
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 11
         6: .line 674
      StackMap locals: jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod[] double int
      StackMap stack:
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.counts:[J
            iload 5 /* i */
            laload
            l2d
            dstore 6 /* p */
        start local 6 // double p
         7: .line 675
            dload 6 /* p */
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.totalCount:J
            l2d
            ddiv
            dstore 6 /* p */
         8: .line 676
            dload 3 /* totalProbability */
            dload 6 /* p */
            dadd
            dstore 3 /* totalProbability */
         9: .line 677
            aload 2 /* pmethods */
            iload 5 /* i */
            new jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod
            dup
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.items:[Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod[]
            iload 5 /* i */
            aaload
            dload 6 /* p */
            invokespecial jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;D)V
            aastore
        end local 6 // double p
        10: .line 673
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            if_icmplt 6
        end local 5 // int i
        12: .line 680
            aload 2 /* pmethods */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
        13: .line 682
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.config:Ljdk/vm/ci/hotspot/HotSpotVMConfig;
            getfield jdk.vm.ci.hotspot.HotSpotVMConfig.methodProfileWidth:I
            if_icmpge 14
            dconst_0
            goto 15
      StackMap locals:
      StackMap stack:
        14: dconst_1
            dconst_0
            dconst_1
            dload 3 /* totalProbability */
            dsub
            invokestatic java.lang.Math.max:(DD)D
            invokestatic java.lang.Math.min:(DD)D
      StackMap locals:
      StackMap stack: double
        15: dstore 5 /* notRecordedMethodProbability */
        start local 5 // double notRecordedMethodProbability
        16: .line 683
            getstatic jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.$assertionsDisabled:Z
            ifne 17
            dload 5 /* notRecordedMethodProbability */
            dconst_0
            dcmpl
            ifeq 17
            aload 1 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.config:Ljdk/vm/ci/hotspot/HotSpotVMConfig;
            getfield jdk.vm.ci.hotspot.HotSpotVMConfig.methodProfileWidth:I
            if_icmpeq 17
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        17: .line 684
      StackMap locals: double
      StackMap stack:
            new jdk.vm.ci.meta.JavaMethodProfile
            dup
            dload 5 /* notRecordedMethodProbability */
            aload 2 /* pmethods */
            invokespecial jdk.vm.ci.meta.JavaMethodProfile.<init>:(D[Ljdk/vm/ci/meta/JavaMethodProfile$ProfiledMethod;)V
            areturn
        end local 5 // double notRecordedMethodProbability
        end local 3 // double totalProbability
        end local 2 // jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod[] pmethods
        end local 1 // jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile profile
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   18     0                          this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0   18     1                       profile  Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile<Ljdk/vm/ci/meta/ResolvedJavaMethod;>;
            3   18     2                      pmethods  [Ljdk/vm/ci/meta/JavaMethodProfile$ProfiledMethod;
            4   18     3              totalProbability  D
            5   12     5                             i  I
            7   10     6                             p  D
           16   18     5  notRecordedMethodProbability  D
    Signature: (Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile<Ljdk/vm/ci/meta/ResolvedJavaMethod;>;)Ljdk/vm/ci/meta/JavaMethodProfile;
    MethodParameters:
         Name  Flags
      profile  

  private int getMethodOffset(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // int row
         0: .line 688
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.state:Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.virtualCallDataFirstMethodOffset:I
            iload 1 /* row */
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.state:Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.typeDataRowSize:I
            imul
            iadd
            ireturn
        end local 1 // int row
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    1     1   row  I
    MethodParameters:
      Name  Flags
      row   

  private int getMethodCountOffset(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // int row
         0: .line 692
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.state:Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.virtualCallDataFirstMethodCountOffset:I
            iload 1 /* row */
            aload 0 /* this */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.state:Ljdk/vm/ci/hotspot/HotSpotMethodData$VMState;
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$VMState.typeDataRowSize:I
            imul
            iadd
            ireturn
        end local 1 // int row
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    1     1   row  I
    MethodParameters:
      Name  Flags
      row   

  public java.lang.StringBuilder appendTo(java.lang.StringBuilder, jdk.vm.ci.hotspot.HotSpotMethodData, int);
    descriptor: (Ljava/lang/StringBuilder;Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=8, args_size=4
        start local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // jdk.vm.ci.hotspot.HotSpotMethodData data
        start local 3 // int pos
         0: .line 697
            aload 0 /* this */
            aload 2 /* data */
            iload 3 /* pos */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getRawMethodProfile:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile;
            astore 4 /* profile */
        start local 4 // jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile profile
         1: .line 698
            aload 0 /* this */
            aload 1 /* sb */
            ldc "exception_seen(%s) "
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 2 /* data */
            iload 3 /* pos */
            invokevirtual jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData.getExceptionSeen:(Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljdk/vm/ci/meta/TriState;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* data */
            iload 3 /* pos */
            invokespecial jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData.appendTo:(Ljava/lang/StringBuilder;Ljdk/vm/ci/hotspot/HotSpotMethodData;I)Ljava/lang/StringBuilder;
            ldc "%nmethod_entries(%d)"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 699
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 7
         4: .line 700
      StackMap locals: jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile int
      StackMap stack:
            aload 4 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.counts:[J
            iload 5 /* i */
            laload
            lstore 6 /* count */
        start local 6 // long count
         5: .line 701
            aload 1 /* sb */
            ldc "%n  %s (%d, %4.2f)"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.items:[Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod[]
            iload 5 /* i */
            aaload
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            lload 6 /* count */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
            lload 6 /* count */
            l2d
            aload 4 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.totalCount:J
            l2d
            ddiv
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 6 // long count
         6: .line 699
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            aload 4 /* profile */
            getfield jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile.entries:I
            if_icmplt 4
        end local 5 // int i
         8: .line 703
            aload 1 /* sb */
            areturn
        end local 4 // jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile profile
        end local 3 // int pos
        end local 2 // jdk.vm.ci.hotspot.HotSpotMethodData data
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Ljdk/vm/ci/hotspot/HotSpotMethodData$VirtualCallData;
            0    9     1       sb  Ljava/lang/StringBuilder;
            0    9     2     data  Ljdk/vm/ci/hotspot/HotSpotMethodData;
            0    9     3      pos  I
            1    9     4  profile  Ljdk/vm/ci/hotspot/HotSpotMethodData$RawItemProfile<Ljdk/vm/ci/meta/ResolvedJavaMethod;>;
            3    8     5        i  I
            5    6     6    count  J
    MethodParameters:
      Name  Flags
      sb    
      data  
      pos   
}
SourceFile: "HotSpotMethodData.java"
NestHost: jdk.vm.ci.hotspot.HotSpotMethodData
InnerClasses:
  RawItemProfile = jdk.vm.ci.hotspot.HotSpotMethodData$RawItemProfile of jdk.vm.ci.hotspot.HotSpotMethodData
  ReceiverTypeData = jdk.vm.ci.hotspot.HotSpotMethodData$ReceiverTypeData of jdk.vm.ci.hotspot.HotSpotMethodData
  final VMState = jdk.vm.ci.hotspot.HotSpotMethodData$VMState of jdk.vm.ci.hotspot.HotSpotMethodData
  VirtualCallData = jdk.vm.ci.hotspot.HotSpotMethodData$VirtualCallData of jdk.vm.ci.hotspot.HotSpotMethodData
  public ProfiledMethod = jdk.vm.ci.meta.JavaMethodProfile$ProfiledMethod of jdk.vm.ci.meta.JavaMethodProfile