class org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef extends org.graalvm.compiler.replacements.classfile.ClassfileConstant
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef
super_class: org.graalvm.compiler.replacements.classfile.ClassfileConstant
{
final int nameIndex;
descriptor: I
flags: (0x0010) ACC_FINAL
private jdk.vm.ci.meta.ResolvedJavaType type;
descriptor: Ljdk/vm/ci/meta/ResolvedJavaType;
flags: (0x0002) ACC_PRIVATE
void <init>(java.io.DataInputStream);
descriptor: (Ljava/io/DataInputStream;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
start local 1 // java.io.DataInputStream stream
0: .line 90
aload 0 /* this */
bipush 7
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant.<init>:(B)V
1: .line 91
aload 0 /* this */
aload 1 /* stream */
invokevirtual java.io.DataInputStream.readUnsignedShort:()I
putfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.nameIndex:I
2: .line 92
return
end local 1 // java.io.DataInputStream stream
end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
0 3 1 stream Ljava/io/DataInputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
public void loadReferencedType(org.graalvm.compiler.replacements.classfile.ClassfileConstantPool, int, int);
descriptor: (Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
start local 1 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool cp
start local 2 // int index
start local 3 // int opcode
0: .line 96
aload 0 /* this */
aload 1 /* cp */
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
pop
1: .line 97
return
end local 3 // int opcode
end local 2 // int index
end local 1 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool cp
end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
0 2 1 cp Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 2 2 index I
0 2 3 opcode I
MethodParameters:
Name Flags
cp
index
opcode
public jdk.vm.ci.meta.ResolvedJavaType resolve(org.graalvm.compiler.replacements.classfile.ClassfileConstantPool);
descriptor: (Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
start local 1 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool cp
0: .line 100
aload 0 /* this */
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.type:Ljdk/vm/ci/meta/ResolvedJavaType;
ifnonnull 4
1: .line 101
aload 1 /* cp */
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$Utf8;
aload 0 /* this */
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.nameIndex:I
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.get:(Ljava/lang/Class;I)Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8.value:Ljava/lang/String;
astore 2 /* typeDescriptor */
start local 2 // java.lang.String typeDescriptor
2: .line 102
aload 1 /* cp */
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.context:Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
astore 3 /* context */
start local 3 // org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider context
3: .line 103
aload 0 /* this */
aload 3 /* context */
getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider.metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
aload 3 /* context */
aload 2 /* typeDescriptor */
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider.resolveToClass:(Ljava/lang/String;)Ljava/lang/Class;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
putfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.type:Ljdk/vm/ci/meta/ResolvedJavaType;
end local 3 // org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider context
end local 2 // java.lang.String typeDescriptor
4: .line 105
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.type:Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 1 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool cp
end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
0 5 1 cp Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
2 4 2 typeDescriptor Ljava/lang/String;
3 4 3 context Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
Exceptions:
throws org.graalvm.compiler.debug.GraalError
MethodParameters:
Name Flags
cp
}
SourceFile: "ClassfileConstant.java"
NestHost: org.graalvm.compiler.replacements.classfile.ClassfileConstant
InnerClasses:
ClassRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
Utf8 = org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8 of org.graalvm.compiler.replacements.classfile.ClassfileConstant