class org.graalvm.compiler.replacements.classfile.ClassfileConstantPool implements jdk.vm.ci.meta.ConstantPool, org.graalvm.compiler.replacements.classfile.ConstantPoolPatch
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.replacements.classfile.ClassfileConstantPool
super_class: java.lang.Object
{
final org.graalvm.compiler.replacements.classfile.ClassfileConstant[] entries;
descriptor: [Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
flags: (0x0010) ACC_FINAL
final org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider context;
descriptor: Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
flags: (0x0010) ACC_FINAL
void <init>(java.io.DataInputStream, org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider);
descriptor: (Ljava/io/DataInputStream;Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.context:Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
2: aload 1
invokevirtual java.io.DataInputStream.readUnsignedShort:()I
istore 4
start local 4 3: aload 0
iload 4
anewarray org.graalvm.compiler.replacements.classfile.ClassfileConstant
putfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
4: iconst_1
istore 5
start local 5 5: goto 12
6: StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileConstantPool java.io.DataInputStream org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider top int int
StackMap stack:
aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 5
aload 1
invokestatic org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.readConstant:(Ljava/io/DataInputStream;)Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
aastore
7: aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 5
aaload
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant.tag:B
istore 3
start local 3 8: iload 3
bipush 6
if_icmpeq 9
iload 3
iconst_5
if_icmpne 11
9: StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileConstantPool java.io.DataInputStream org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider int int int
StackMap stack:
iinc 5 2
10: goto 12
11: StackMap locals:
StackMap stack:
iinc 5 1
end local 3 12: StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileConstantPool java.io.DataInputStream org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider top int int
StackMap stack:
iload 5
iload 4
if_icmplt 6
13: return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 14 1 stream Ljava/io/DataInputStream;
0 14 2 context Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
8 12 3 tag B
3 14 4 count I
5 14 5 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
context
static final org.graalvm.compiler.replacements.classfile.ClassfileConstant readConstant(java.io.DataInputStream);
descriptor: (Ljava/io/DataInputStream;)Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.io.DataInputStream.readByte:()B
istore 1
start local 1 1: iload 1
tableswitch { // 1 - 18
1: 12
2: 21
3: 7
4: 8
5: 9
6: 10
7: 2
8: 6
9: 3
10: 4
11: 5
12: 11
13: 21
14: 21
15: 13
16: 15
17: 17
18: 19
default: 21
}
2: StackMap locals: int
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.<init>:(Ljava/io/DataInputStream;)V
areturn
3: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$FieldRef
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$FieldRef.<init>:(Ljava/io/DataInputStream;)V
areturn
4: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$MethodRef
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$MethodRef.<init>:(Ljava/io/DataInputStream;)V
areturn
5: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$InterfaceMethodRef
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$InterfaceMethodRef.<init>:(Ljava/io/DataInputStream;)V
areturn
6: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$StringRef
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$StringRef.<init>:(Ljava/io/DataInputStream;)V
areturn
7: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
dup
iload 1
aload 0
invokevirtual java.io.DataInputStream.readInt:()I
invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive.<init>:(BLjdk/vm/ci/meta/JavaConstant;)V
areturn
8: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
dup
iload 1
aload 0
invokevirtual java.io.DataInputStream.readFloat:()F
invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive.<init>:(BLjdk/vm/ci/meta/JavaConstant;)V
areturn
9: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
dup
iload 1
aload 0
invokevirtual java.io.DataInputStream.readLong:()J
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive.<init>:(BLjdk/vm/ci/meta/JavaConstant;)V
areturn
10: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
dup
iload 1
aload 0
invokevirtual java.io.DataInputStream.readDouble:()D
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive.<init>:(BLjdk/vm/ci/meta/JavaConstant;)V
areturn
11: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$NameAndType
dup
aload 0
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$NameAndType.<init>:(Ljava/io/DataInputStream;)V
areturn
12: StackMap locals:
StackMap stack:
new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8
dup
aload 0
invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8.<init>:(Ljava/lang/String;)V
areturn
13: StackMap locals:
StackMap stack:
aload 0
iconst_3
invokestatic org.graalvm.compiler.replacements.classfile.Classfile.skipFully:(Ljava/io/DataInputStream;I)V
14: new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported
dup
iload 1
ldc "CONSTANT_MethodHandle_info"
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported.<init>:(BLjava/lang/String;)V
areturn
15: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokestatic org.graalvm.compiler.replacements.classfile.Classfile.skipFully:(Ljava/io/DataInputStream;I)V
16: new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported
dup
iload 1
ldc "CONSTANT_MethodType_info"
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported.<init>:(BLjava/lang/String;)V
areturn
17: StackMap locals:
StackMap stack:
aload 0
iconst_4
invokestatic org.graalvm.compiler.replacements.classfile.Classfile.skipFully:(Ljava/io/DataInputStream;I)V
18: new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported
dup
iload 1
ldc "CONSTANT_Dynamic_info"
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported.<init>:(BLjava/lang/String;)V
areturn
19: StackMap locals:
StackMap stack:
aload 0
iconst_4
invokestatic org.graalvm.compiler.replacements.classfile.Classfile.skipFully:(Ljava/io/DataInputStream;I)V
20: new org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported
dup
iload 1
ldc "CONSTANT_InvokeDynamic_info"
invokespecial org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported.<init>:(BLjava/lang/String;)V
areturn
21: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "Invalid constant pool tag: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 stream Ljava/io/DataInputStream;
1 22 1 tag B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
public int length();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
<T extends org.graalvm.compiler.replacements.classfile.ClassfileConstant> T get(java.lang.Class<T>, );
descriptor: (Ljava/lang/Class;I)Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 2
aaload
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 1 1 c Ljava/lang/Class<TT;>;
0 1 2 index I
Signature: <T:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;>(Ljava/lang/Class<TT;>;I)TT;
MethodParameters:
Name Flags
c
index
public void loadReferencedType(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
sipush 186
if_icmpne 2
1: new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "INVOKEDYNAMIC not supported by "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 1
aaload
aload 0
iload 1
iload 2
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant.loadReferencedType:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;II)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 4 1 index I
0 4 2 opcode I
MethodParameters:
Name Flags
index
opcode
public jdk.vm.ci.meta.JavaField lookupField(int, jdk.vm.ci.meta.ResolvedJavaMethod, int);
descriptor: (ILjdk/vm/ci/meta/ResolvedJavaMethod;I)Ljdk/vm/ci/meta/JavaField;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$FieldRef;
iload 1
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$FieldRef
aload 0
iload 3
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$FieldRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;I)Ljdk/vm/ci/meta/ResolvedJavaField;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 1 1 index I
0 1 2 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 1 3 opcode I
MethodParameters:
Name Flags
index
method
opcode
public jdk.vm.ci.meta.JavaMethod lookupMethod(int, int);
descriptor: (II)Ljdk/vm/ci/meta/JavaMethod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
sipush 186
if_icmpne 2
1: new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "INVOKEDYNAMIC not supported by"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ExecutableRef;
iload 1
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$ExecutableRef
aload 0
iload 2
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ExecutableRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;I)Ljdk/vm/ci/meta/ResolvedJavaMethod;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 3 1 index I
0 3 2 opcode I
MethodParameters:
Name Flags
index
opcode
public jdk.vm.ci.meta.JavaType lookupType(int, int);
descriptor: (II)Ljdk/vm/ci/meta/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
iload 1
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$ClassRef
aload 0
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 1 1 index I
0 1 2 opcode I
MethodParameters:
Name Flags
index
opcode
public jdk.vm.ci.meta.JavaType lookupReferencedType(int, int);
descriptor: (II)Ljdk/vm/ci/meta/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
lookupswitch { // 16
18: 1
19: 1
20: 1
178: 2
179: 2
180: 2
181: 2
182: 4
183: 4
184: 4
185: 4
187: 1
189: 1
192: 1
193: 1
197: 1
default: 6
}
1: StackMap locals:
StackMap stack:
aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
iload 1
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$ClassRef
aload 0
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
2: StackMap locals:
StackMap stack:
aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$FieldRef;
iload 1
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$FieldRef
astore 3
start local 3 3: aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
aload 3
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$FieldRef.classIndex: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$ClassRef
aload 0
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 3 4: StackMap locals:
StackMap stack:
aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ExecutableRef;
iload 1
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$ExecutableRef
astore 4
start local 4 5: aload 0
ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ClassRef;
aload 4
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$ExecutableRef.classIndex: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$ClassRef
aload 0
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef.resolve:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 4 6: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Unexpected opcode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 7 1 index I
0 7 2 opcode I
3 4 3 f Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$FieldRef;
5 6 4 e Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$ExecutableRef;
MethodParameters:
Name Flags
index
opcode
public java.lang.String lookupUtf8(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 1
aaload
checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8.value:Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 1 1 index I
MethodParameters:
Name Flags
index
public jdk.vm.ci.meta.Signature lookupSignature(int);
descriptor: (I)Ljdk/vm/ci/meta/Signature;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 1 1 index I
MethodParameters:
Name Flags
index
public java.lang.Object lookupConstant(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.entries:[Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
iload 1
aaload
astore 2
start local 2 1: aload 2
instanceof org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
ifeq 4
2: aload 2
checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive
astore 3
start local 3 3: aload 3
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive.value:Ljdk/vm/ci/meta/JavaConstant;
areturn
end local 3 4: StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileConstant
StackMap stack:
aload 2
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant.tag:B
tableswitch { // 7 - 8
7: 5
8: 6
default: 7
}
5: StackMap locals:
StackMap stack:
aload 0
iload 1
iconst_m1
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.lookupType:(II)Ljdk/vm/ci/meta/JavaType;
areturn
6: StackMap locals:
StackMap stack:
aload 2
checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant$StringRef
aload 0
invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstant$StringRef.getValue:(Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)Ljdk/vm/ci/meta/JavaConstant;
areturn
7: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
ldc "Unexpected constant pool tag %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant.tag:B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
aastore
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 8 1 index I
1 8 2 c Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
3 4 3 p Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$Primitive;
MethodParameters:
Name Flags
index
public jdk.vm.ci.meta.JavaConstant lookupAppendix(int, int);
descriptor: (II)Ljdk/vm/ci/meta/JavaConstant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
sipush 182
if_icmpne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
0 3 1 index I
0 3 2 opcode I
MethodParameters:
Name Flags
index
opcode
}
SourceFile: "ClassfileConstantPool.java"
NestMembers:
org.graalvm.compiler.replacements.classfile.ClassfileConstantPool$Bytecodes
InnerClasses:
ClassRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$ClassRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
ExecutableRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$ExecutableRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
FieldRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$FieldRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
InterfaceMethodRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$InterfaceMethodRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
MethodRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$MethodRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
NameAndType = org.graalvm.compiler.replacements.classfile.ClassfileConstant$NameAndType of org.graalvm.compiler.replacements.classfile.ClassfileConstant
Primitive = org.graalvm.compiler.replacements.classfile.ClassfileConstant$Primitive of org.graalvm.compiler.replacements.classfile.ClassfileConstant
StringRef = org.graalvm.compiler.replacements.classfile.ClassfileConstant$StringRef of org.graalvm.compiler.replacements.classfile.ClassfileConstant
Unsupported = org.graalvm.compiler.replacements.classfile.ClassfileConstant$Unsupported of org.graalvm.compiler.replacements.classfile.ClassfileConstant
Utf8 = org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8 of org.graalvm.compiler.replacements.classfile.ClassfileConstant
public Bytecodes = org.graalvm.compiler.replacements.classfile.ClassfileConstantPool$Bytecodes of org.graalvm.compiler.replacements.classfile.ClassfileConstantPool