public class sun.jvm.hotspot.oops.VirtualCallTypeData<K, M> extends sun.jvm.hotspot.oops.VirtualCallData<K, M> implements sun.jvm.hotspot.oops.CallTypeDataInterface<K>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.oops.VirtualCallTypeData
  super_class: sun.jvm.hotspot.oops.VirtualCallData
{
  final sun.jvm.hotspot.oops.TypeStackSlotEntries<K, M> args;
    descriptor: Lsun/jvm/hotspot/oops/TypeStackSlotEntries;
    flags: (0x0010) ACC_FINAL
    Signature: Lsun/jvm/hotspot/oops/TypeStackSlotEntries<TK;TM;>;

  final sun.jvm.hotspot.oops.ReturnTypeEntry<K, M> ret;
    descriptor: Lsun/jvm/hotspot/oops/ReturnTypeEntry;
    flags: (0x0010) ACC_FINAL
    Signature: Lsun/jvm/hotspot/oops/ReturnTypeEntry<TK;TM;>;

  int cellCountGlobalOffset();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 44
            invokestatic sun.jvm.hotspot.oops.VirtualCallData.staticCellCount:()I
            invokestatic sun.jvm.hotspot.oops.TypeEntriesAtCall.cellCountLocalOffset:()I
            iadd
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  int cellCountNoHeader();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 48
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCountGlobalOffset:()I
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.uintAt:(I)I
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public void <init>(sun.jvm.hotspot.oops.MethodDataInterface<K, M>, sun.jvm.hotspot.oops.DataLayout);
    descriptor: (Lsun/jvm/hotspot/oops/MethodDataInterface;Lsun/jvm/hotspot/oops/DataLayout;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
        start local 1 // sun.jvm.hotspot.oops.MethodDataInterface methodData
        start local 2 // sun.jvm.hotspot.oops.DataLayout layout
         0: .line 52
            aload 0 /* this */
            aload 1 /* methodData */
            aload 2 /* layout */
            invokespecial sun.jvm.hotspot.oops.VirtualCallData.<init>:(Lsun/jvm/hotspot/oops/MethodDataInterface;Lsun/jvm/hotspot/oops/DataLayout;)V
         1: .line 53
            aload 0 /* this */
            new sun.jvm.hotspot.oops.TypeStackSlotEntries
            dup
            aload 1 /* methodData */
            aload 0 /* this */
            invokestatic sun.jvm.hotspot.oops.VirtualCallData.staticCellCount:()I
            invokestatic sun.jvm.hotspot.oops.TypeEntriesAtCall.headerCellCount:()I
            iadd
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.numberOfArguments:()I
            invokespecial sun.jvm.hotspot.oops.TypeStackSlotEntries.<init>:(Lsun/jvm/hotspot/oops/MethodDataInterface;Lsun/jvm/hotspot/oops/ProfileData;II)V
            putfield sun.jvm.hotspot.oops.VirtualCallTypeData.args:Lsun/jvm/hotspot/oops/TypeStackSlotEntries;
         2: .line 54
            aload 0 /* this */
            new sun.jvm.hotspot.oops.ReturnTypeEntry
            dup
            aload 1 /* methodData */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCount:()I
            invokestatic sun.jvm.hotspot.oops.ReturnTypeEntry.staticCellCount:()I
            isub
            invokespecial sun.jvm.hotspot.oops.ReturnTypeEntry.<init>:(Lsun/jvm/hotspot/oops/MethodDataInterface;Lsun/jvm/hotspot/oops/ProfileData;I)V
            putfield sun.jvm.hotspot.oops.VirtualCallTypeData.ret:Lsun/jvm/hotspot/oops/ReturnTypeEntry;
         3: .line 55
            return
        end local 2 // sun.jvm.hotspot.oops.DataLayout layout
        end local 1 // sun.jvm.hotspot.oops.MethodDataInterface methodData
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;
            0    4     1  methodData  Lsun/jvm/hotspot/oops/MethodDataInterface<TK;TM;>;
            0    4     2      layout  Lsun/jvm/hotspot/oops/DataLayout;
    Signature: (Lsun/jvm/hotspot/oops/MethodDataInterface<TK;TM;>;Lsun/jvm/hotspot/oops/DataLayout;)V
    MethodParameters:
            Name  Flags
      methodData  
      layout      

  static int staticCellCount();
    descriptor: ()I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 58
            iconst_m1
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public int cellCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 62
            invokestatic sun.jvm.hotspot.oops.VirtualCallData.staticCellCount:()I
         1: .line 63
            invokestatic sun.jvm.hotspot.oops.TypeEntriesAtCall.headerCellCount:()I
         2: .line 62
            iadd
         3: .line 64
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCountGlobalOffset:()I
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.intAt:(I)I
         4: .line 62
            iadd
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public int numberOfArguments();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 68
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCountNoHeader:()I
            invokestatic sun.jvm.hotspot.oops.TypeStackSlotEntries.perArgCount:()I
            idiv
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public boolean hasArguments();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 72
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCountNoHeader:()I
            invokestatic sun.jvm.hotspot.oops.TypeStackSlotEntries.perArgCount:()I
            if_icmplt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public K argumentType();
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
        start local 1 // int i
         0: .line 76
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.args:Lsun/jvm/hotspot/oops/TypeStackSlotEntries;
            iload 1 /* i */
            invokevirtual sun.jvm.hotspot.oops.TypeStackSlotEntries.type:(I)Ljava/lang/Object;
            areturn
        end local 1 // int i
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;
            0    1     1     i  I
    Signature: (I)TK;
    MethodParameters:
      Name  Flags
      i     

  public boolean hasReturn();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 80
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.cellCountNoHeader:()I
            invokestatic sun.jvm.hotspot.oops.TypeStackSlotEntries.perArgCount:()I
            irem
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public K returnType();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 84
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.ret:Lsun/jvm/hotspot/oops/ReturnTypeEntry;
            invokevirtual sun.jvm.hotspot.oops.ReturnTypeEntry.type:()Ljava/lang/Object;
            areturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;
    Signature: ()TK;

  public int argumentTypeIndex(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
        start local 1 // int i
         0: .line 88
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.args:Lsun/jvm/hotspot/oops/TypeStackSlotEntries;
            iload 1 /* i */
            invokevirtual sun.jvm.hotspot.oops.TypeStackSlotEntries.typeIndex:(I)I
            ireturn
        end local 1 // int i
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public int returnTypeIndex();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
         0: .line 92
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.ret:Lsun/jvm/hotspot/oops/ReturnTypeEntry;
            invokevirtual sun.jvm.hotspot.oops.ReturnTypeEntry.typeIndex:()I
            ireturn
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;

  public void printDataOn(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
        start local 1 // java.io.PrintStream st
         0: .line 96
            aload 0 /* this */
            aload 1 /* st */
            invokespecial sun.jvm.hotspot.oops.VirtualCallData.printDataOn:(Ljava/io/PrintStream;)V
         1: .line 97
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.hasArguments:()Z
            ifeq 5
         2: .line 98
            aload 0 /* this */
            aload 1 /* st */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.tab:(Ljava/io/PrintStream;)V
         3: .line 99
            aload 1 /* st */
            ldc "argument types"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         4: .line 100
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.args:Lsun/jvm/hotspot/oops/TypeStackSlotEntries;
            aload 1 /* st */
            invokevirtual sun.jvm.hotspot.oops.TypeStackSlotEntries.printDataOn:(Ljava/io/PrintStream;)V
         5: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.hasReturn:()Z
            ifeq 9
         6: .line 103
            aload 0 /* this */
            aload 1 /* st */
            invokevirtual sun.jvm.hotspot.oops.VirtualCallTypeData.tab:(Ljava/io/PrintStream;)V
         7: .line 104
            aload 1 /* st */
            ldc "return type"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         8: .line 105
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.VirtualCallTypeData.ret:Lsun/jvm/hotspot/oops/ReturnTypeEntry;
            aload 1 /* st */
            invokevirtual sun.jvm.hotspot.oops.ReturnTypeEntry.printDataOn:(Ljava/io/PrintStream;)V
         9: .line 107
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.PrintStream st
        end local 0 // sun.jvm.hotspot.oops.VirtualCallTypeData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/jvm/hotspot/oops/VirtualCallTypeData<TK;TM;>;
            0   10     1    st  Ljava/io/PrintStream;
    MethodParameters:
      Name  Flags
      st    
}
Signature: <K:Ljava/lang/Object;M:Ljava/lang/Object;>Lsun/jvm/hotspot/oops/VirtualCallData<TK;TM;>;Lsun/jvm/hotspot/oops/CallTypeDataInterface<TK;>;
SourceFile: "VirtualCallTypeData.java"