class jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo
super_class: java.lang.Object
{
private final long metaspaceData;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl this$0;
descriptor: Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
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: ldc Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
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.HotSpotResolvedObjectTypeImpl$FieldInfo.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl, int);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;I)V
flags: (0x0000)
Code:
stack=5, locals=7, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.this$0:Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
aload 0
invokespecial java.lang.Object.<init>:()V
1: invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
astore 3
start local 3 2: getstatic jdk.vm.ci.hotspot.UnsafeAccess.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl.getMetaspaceKlass:()J
aload 3
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.instanceKlassFieldsOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getAddress:(J)J
lstore 4
start local 4 3: getstatic jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.$assertionsDisabled:Z
ifne 4
aload 3
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoFieldSlots:I
bipush 6
if_icmpeq 4
new java.lang.AssertionError
dup
ldc "revisit the field parsing code"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals: jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl int jdk.vm.ci.hotspot.HotSpotVMConfig long
StackMap stack:
aload 3
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoFieldSlots:I
iconst_2
imul
iload 2
imul
istore 6
start local 6 5: aload 0
lload 4
aload 3
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.arrayU2DataOffset:I
i2l
ladd
iload 6
i2l
ladd
putfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.metaspaceData:J
6: return
end local 6 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
0 7 2 index I
2 7 3 config Ljdk/vm/ci/hotspot/HotSpotVMConfig;
3 7 4 metaspaceFields J
5 7 6 offset I
MethodParameters:
Name Flags
this$0 final
index
private int getAccessFlags();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoAccessFlagsOffset:I
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.readFieldSlot:(I)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
private int getNameIndex();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoNameIndexOffset:I
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.readFieldSlot:(I)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
private int getSignatureIndex();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoSignatureIndexOffset:I
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.readFieldSlot:(I)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
public int getOffset();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
astore 1
start local 1 1: aload 0
aload 1
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoLowPackedOffset:I
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.readFieldSlot:(I)I
istore 2
start local 2 2: aload 0
aload 1
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoHighPackedOffset:I
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.readFieldSlot:(I)I
istore 3
start local 3 3: iload 3
bipush 16
ishl
iload 2
ior
aload 1
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.fieldInfoTagSize:I
ishr
istore 4
start local 4 4: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
1 5 1 config Ljdk/vm/ci/hotspot/HotSpotVMConfig;
2 5 2 lowPacked I
3 5 3 highPacked I
4 5 4 offset I
private int readFieldSlot(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: iconst_2
iload 1
imul
istore 2
start local 2 1: getstatic jdk.vm.ci.hotspot.UnsafeAccess.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.metaspaceData:J
iload 2
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
0 2 1 index I
1 2 2 offset I
MethodParameters:
Name Flags
index
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getNameIndex:()I
istore 1
start local 1 1: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.isInternal:()Z
ifeq 2
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
iload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfig.symbolAt:(I)Ljava/lang/String;
goto 3
StackMap locals: int
StackMap stack:
2: aload 0
getfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.this$0:Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl.getConstantPool:()Ljdk/vm/ci/hotspot/HotSpotConstantPool;
iload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotConstantPool.lookupUtf8:(I)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
1 4 1 nameIndex I
public java.lang.String getSignature();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getSignatureIndex:()I
istore 1
start local 1 1: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.isInternal:()Z
ifeq 2
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
iload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfig.symbolAt:(I)Ljava/lang/String;
goto 3
StackMap locals: int
StackMap stack:
2: aload 0
getfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.this$0:Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl.getConstantPool:()Ljdk/vm/ci/hotspot/HotSpotConstantPool;
iload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotConstantPool.lookupUtf8:(I)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
1 4 1 signatureIndex I
public jdk.vm.ci.meta.JavaType getType();
descriptor: ()Ljdk/vm/ci/meta/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getSignature:()Ljava/lang/String;
astore 1
start local 1 1: invokestatic jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.runtime:()Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
aload 1
aload 0
getfield jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.this$0:Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl;
iconst_0
invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.lookupType:(Ljava/lang/String;Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;Z)Ljdk/vm/ci/meta/JavaType;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
1 2 1 signature Ljava/lang/String;
private boolean isInternal();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getAccessFlags:()I
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.jvmAccFieldInternal:I
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
public boolean isStatic();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getAccessFlags:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
public boolean hasGenericSignature();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo.getAccessFlags:()I
invokestatic jdk.vm.ci.hotspot.HotSpotVMConfig.config:()Ljdk/vm/ci/hotspot/HotSpotVMConfig;
getfield jdk.vm.ci.hotspot.HotSpotVMConfig.jvmAccFieldHasGenericSignature:I
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl$FieldInfo;
}
SourceFile: "HotSpotResolvedObjectTypeImpl.java"
NestHost: jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl
InnerClasses:
FieldInfo = jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl$FieldInfo of jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl