public class sun.jvm.hotspot.oops.ConstantPool$CPSlot
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.oops.ConstantPool$CPSlot
  super_class: java.lang.Object
{
  private sun.jvm.hotspot.debugger.Address ptr;
    descriptor: Lsun/jvm/hotspot/debugger/Address;
    flags: (0x0002) ACC_PRIVATE

  final sun.jvm.hotspot.oops.ConstantPool this$0;
    descriptor: Lsun/jvm/hotspot/oops/ConstantPool;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(sun.jvm.hotspot.oops.ConstantPool, sun.jvm.hotspot.debugger.Address);
    descriptor: (Lsun/jvm/hotspot/oops/ConstantPool;Lsun/jvm/hotspot/debugger/Address;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
        start local 2 // sun.jvm.hotspot.debugger.Address ptr
         0: .line 41
            aload 0 /* this */
            aload 1
            putfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.this$0:Lsun/jvm/hotspot/oops/ConstantPool;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            aload 2 /* ptr */
            putfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
         2: .line 43
            return
        end local 2 // sun.jvm.hotspot.debugger.Address ptr
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;
            0    3     2   ptr  Lsun/jvm/hotspot/debugger/Address;
    MethodParameters:
        Name  Flags
      this$0  final
      ptr     

  void <init>(sun.jvm.hotspot.oops.ConstantPool, sun.jvm.hotspot.oops.Symbol);
    descriptor: (Lsun/jvm/hotspot/oops/ConstantPool;Lsun/jvm/hotspot/oops/Symbol;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
        start local 2 // sun.jvm.hotspot.oops.Symbol sym
         0: .line 44
            aload 0 /* this */
            aload 1
            putfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.this$0:Lsun/jvm/hotspot/oops/ConstantPool;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 45
            aload 0 /* this */
            aload 2 /* sym */
            invokevirtual sun.jvm.hotspot.oops.Symbol.getAddress:()Lsun/jvm/hotspot/debugger/Address;
            lconst_1
            invokeinterface sun.jvm.hotspot.debugger.Address.orWithMask:(J)Lsun/jvm/hotspot/debugger/Address;
            putfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
         2: .line 46
            return
        end local 2 // sun.jvm.hotspot.oops.Symbol sym
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;
            0    3     2   sym  Lsun/jvm/hotspot/oops/Symbol;
    MethodParameters:
        Name  Flags
      this$0  final
      sym     

  public boolean isResolved();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
         0: .line 49
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
            aconst_null
            invokeinterface sun.jvm.hotspot.debugger.Address.minus:(Lsun/jvm/hotspot/debugger/Address;)J
            lconst_1
            land
            lconst_0
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;

  public boolean isUnresolved();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
         0: .line 52
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
            aconst_null
            invokeinterface sun.jvm.hotspot.debugger.Address.minus:(Lsun/jvm/hotspot/debugger/Address;)J
            lconst_1
            land
            lconst_1
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;

  public sun.jvm.hotspot.oops.Symbol getSymbol();
    descriptor: ()Lsun/jvm/hotspot/oops/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
         0: .line 56
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.ConstantPool$CPSlot.isUnresolved:()Z
            ifne 1
            new java.lang.InternalError
            dup
            ldc "not a symbol"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 57
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
            lconst_1
            invokeinterface sun.jvm.hotspot.debugger.Address.xorWithMask:(J)Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.oops.Symbol.create:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Symbol;
            areturn
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;

  public sun.jvm.hotspot.oops.Klass getKlass();
    descriptor: ()Lsun/jvm/hotspot/oops/Klass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
         0: .line 60
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.oops.ConstantPool$CPSlot.isResolved:()Z
            ifne 1
            new java.lang.InternalError
            dup
            ldc "not klass"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.oops.ConstantPool$CPSlot.ptr:Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.oops.Metadata.instantiateWrapperFor:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Metadata;
            checkcast sun.jvm.hotspot.oops.Klass
            areturn
        end local 0 // sun.jvm.hotspot.oops.ConstantPool$CPSlot this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/oops/ConstantPool$CPSlot;
}
SourceFile: "ConstantPool.java"
NestHost: sun.jvm.hotspot.oops.ConstantPool
InnerClasses:
  public CPSlot = sun.jvm.hotspot.oops.ConstantPool$CPSlot of sun.jvm.hotspot.oops.ConstantPool