public class jdk.vm.ci.hotspot.HotSpotSignature implements jdk.vm.ci.meta.Signature
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.vm.ci.hotspot.HotSpotSignature
super_class: java.lang.Object
{
private final java.util.List<java.lang.String> parameters;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private final java.lang.String returnType;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String originalString;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private jdk.vm.ci.meta.ResolvedJavaType[] parameterTypes;
descriptor: [Ljdk/vm/ci/meta/ResolvedJavaType;
flags: (0x0002) ACC_PRIVATE
private jdk.vm.ci.meta.ResolvedJavaType returnTypeCache;
descriptor: Ljdk/vm/ci/meta/ResolvedJavaType;
flags: (0x0002) ACC_PRIVATE
private final jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime;
descriptor: Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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/HotSpotSignature;
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.HotSpotSignature.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime, java.lang.String);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
2: aload 0
aload 1
putfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
3: aload 2
invokevirtual java.lang.String.length:()I
ifne 5
4: new java.lang.IllegalArgumentException
dup
ldc "Signature cannot be empty"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: jdk.vm.ci.hotspot.HotSpotSignature jdk.vm.ci.hotspot.HotSpotJVMCIRuntime java.lang.String
StackMap stack:
aload 0
aload 2
putfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
6: aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 40
if_icmpne 18
7: iconst_1
istore 3
start local 3 8: goto 12
9: StackMap locals: int
StackMap stack:
aload 2
iload 3
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.parseSignature:(Ljava/lang/String;I)I
istore 4
start local 4 10: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
aload 2
iload 3
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: iload 4
istore 3
end local 4 12: StackMap locals:
StackMap stack:
iload 3
aload 2
invokevirtual java.lang.String.length:()I
if_icmpge 13
aload 2
iload 3
invokevirtual java.lang.String.charAt:(I)C
bipush 41
if_icmpne 9
13: StackMap locals:
StackMap stack:
iinc 3 1
14: aload 2
iload 3
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.parseSignature:(Ljava/lang/String;I)I
istore 4
start local 4 15: aload 0
aload 2
iload 3
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
putfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
16: iload 4
aload 2
invokevirtual java.lang.String.length:()I
if_icmpeq 19
17: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Extra characters at end of signature: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 18: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Signature must start with a '(': "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 20 1 runtime Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
0 20 2 signature Ljava/lang/String;
8 18 3 cur I
10 12 4 nextCur I
15 18 4 nextCur I
MethodParameters:
Name Flags
runtime
signature
public void <init>(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime, jdk.vm.ci.meta.ResolvedJavaType, jdk.vm.ci.meta.ResolvedJavaType[]);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljdk/vm/ci/meta/ResolvedJavaType;[Ljdk/vm/ci/meta/ResolvedJavaType;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=4, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
2: aload 0
aload 1
putfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
3: aload 0
aload 3
invokevirtual jdk.vm.ci.meta.ResolvedJavaType[].clone:()Ljava/lang/Object;
checkcast jdk.vm.ci.meta.ResolvedJavaType[]
putfield jdk.vm.ci.hotspot.HotSpotSignature.parameterTypes:[Ljdk/vm/ci/meta/ResolvedJavaType;
4: aload 0
aload 2
putfield jdk.vm.ci.hotspot.HotSpotSignature.returnTypeCache:Ljdk/vm/ci/meta/ResolvedJavaType;
5: aload 0
aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getName:()Ljava/lang/String;
putfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
6: new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 4
start local 4 7: aload 3
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 12
StackMap locals: jdk.vm.ci.hotspot.HotSpotSignature jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType[] java.lang.StringBuilder top int int jdk.vm.ci.meta.JavaType[]
StackMap stack:
8: aload 8
iload 6
aaload
astore 5
start local 5 9: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
aload 5
invokeinterface jdk.vm.ci.meta.JavaType.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: aload 4
aload 5
invokeinterface jdk.vm.ci.meta.JavaType.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 5 11: iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
iload 7
if_icmplt 8
13: aload 4
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 0
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
15: getstatic jdk.vm.ci.hotspot.HotSpotSignature.$assertionsDisabled:Z
ifne 16
new jdk.vm.ci.hotspot.HotSpotSignature
dup
aload 1
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
invokespecial jdk.vm.ci.hotspot.HotSpotSignature.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljava/lang/String;)V
aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotSignature.equals:(Ljava/lang/Object;)Z
ifne 16
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals: jdk.vm.ci.hotspot.HotSpotSignature jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType[] java.lang.StringBuilder
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 17 1 runtime Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
0 17 2 returnType Ljdk/vm/ci/meta/ResolvedJavaType;
0 17 3 parameterTypes [Ljdk/vm/ci/meta/ResolvedJavaType;
7 17 4 sb Ljava/lang/StringBuilder;
9 11 5 type Ljdk/vm/ci/meta/JavaType;
MethodParameters:
Name Flags
runtime
returnType
parameterTypes
private static int parseSignature(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: iload 1
istore 2
start local 2 1: StackMap locals: int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 2: iinc 2 1
3: iload 3
bipush 91
if_icmpeq 1
4: iload 3
tableswitch { // 66 - 90
66: 12
67: 12
68: 12
69: 13
70: 12
71: 13
72: 13
73: 12
74: 12
75: 13
76: 5
77: 13
78: 13
79: 13
80: 13
81: 13
82: 13
83: 12
84: 13
85: 13
86: 12
87: 13
88: 13
89: 13
90: 12
default: 13
}
5: StackMap locals: int
StackMap stack:
goto 9
6: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 8
7: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Class name in signature contains '.' at index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
iinc 2 1
9: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
bipush 59
if_icmpne 6
10: iinc 2 1
11: goto 14
12: StackMap locals:
StackMap stack:
goto 14
13: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid character '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iload 2
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "' at index "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " in signature: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
iload 2
15: ireturn
end local 3 end local 2 16: StackMap locals: java.lang.String int
StackMap stack: java.lang.StringIndexOutOfBoundsException
pop
17: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Truncated signature: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 signature Ljava/lang/String;
0 18 1 start I
1 16 2 cur I
2 16 3 first C
Exception table:
from to target type
0 15 16 Class java.lang.StringIndexOutOfBoundsException
MethodParameters:
Name Flags
signature
start
public int getParameterCount(boolean);
descriptor: (Z)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
invokeinterface java.util.List.size:()I
iload 1
ifeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack: int
1: iconst_0
StackMap locals: jdk.vm.ci.hotspot.HotSpotSignature int
StackMap stack: int int
2: iadd
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 3 1 withReceiver Z
MethodParameters:
Name Flags
withReceiver
public jdk.vm.ci.meta.JavaKind getParameterKind(int);
descriptor: (I)Ljdk/vm/ci/meta/JavaKind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokestatic jdk.vm.ci.meta.JavaKind.fromTypeString:(Ljava/lang/String;)Ljdk/vm/ci/meta/JavaKind;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 1 1 index I
MethodParameters:
Name Flags
index
private static boolean checkValidCache(jdk.vm.ci.meta.ResolvedJavaType, jdk.vm.ci.meta.ResolvedJavaType);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/ResolvedJavaType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic jdk.vm.ci.hotspot.HotSpotSignature.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
instanceof jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl
ifeq 5
4: aload 0
checkcast jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl
aload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl.isDefinitelyResolvedWithRespectTo:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
ireturn
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 type Ljdk/vm/ci/meta/ResolvedJavaType;
0 6 1 accessingClass Ljdk/vm/ci/meta/ResolvedJavaType;
MethodParameters:
Name Flags
type
accessingClass
private static jdk.vm.ci.meta.JavaType getUnresolvedOrPrimitiveType(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime, java.lang.String);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljava/lang/String;)Ljdk/vm/ci/meta/JavaType;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpne 3
1: aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic jdk.vm.ci.meta.JavaKind.fromPrimitiveOrVoidTypeChar:(C)Ljdk/vm/ci/meta/JavaKind;
astore 2
start local 2 2: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.getHostJVMCIBackend:()Ljdk/vm/ci/runtime/JVMCIBackend;
invokevirtual jdk.vm.ci.runtime.JVMCIBackend.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
aload 2
invokevirtual jdk.vm.ci.meta.JavaKind.toJavaClass:()Ljava/lang/Class;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 2 3: StackMap locals:
StackMap stack:
aload 1
invokestatic jdk.vm.ci.meta.UnresolvedJavaType.create:(Ljava/lang/String;)Ljdk/vm/ci/meta/UnresolvedJavaType;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 runtime Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
0 4 1 name Ljava/lang/String;
2 3 2 kind Ljdk/vm/ci/meta/JavaKind;
MethodParameters:
Name Flags
runtime
name
public jdk.vm.ci.meta.JavaType getParameterType(int, jdk.vm.ci.meta.ResolvedJavaType);
descriptor: (ILjdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.getUnresolvedOrPrimitiveType:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljava/lang/String;)Ljdk/vm/ci/meta/JavaType;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameterTypes:[Ljdk/vm/ci/meta/ResolvedJavaType;
ifnonnull 4
3: aload 0
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray jdk.vm.ci.meta.ResolvedJavaType
putfield jdk.vm.ci.hotspot.HotSpotSignature.parameterTypes:[Ljdk/vm/ci/meta/ResolvedJavaType;
4: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameterTypes:[Ljdk/vm/ci/meta/ResolvedJavaType;
iload 1
aaload
astore 3
start local 3 5: aload 3
aload 2
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.checkValidCache:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/ResolvedJavaType;)Z
ifne 12
6: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
aload 2
checkcast jdk.vm.ci.hotspot.HotSpotResolvedObjectType
iconst_0
invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.lookupType:(Ljava/lang/String;Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;Z)Ljdk/vm/ci/meta/JavaType;
astore 4
start local 4 7: aload 4
instanceof jdk.vm.ci.meta.ResolvedJavaType
ifeq 11
8: aload 4
checkcast jdk.vm.ci.meta.ResolvedJavaType
astore 3
9: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameterTypes:[Ljdk/vm/ci/meta/ResolvedJavaType;
iload 1
aload 3
aastore
10: goto 12
11: StackMap locals: jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.JavaType
StackMap stack:
aload 4
areturn
end local 4 12: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 13 1 index I
0 13 2 accessingClass Ljdk/vm/ci/meta/ResolvedJavaType;
5 13 3 type Ljdk/vm/ci/meta/ResolvedJavaType;
7 12 4 result Ljdk/vm/ci/meta/JavaType;
MethodParameters:
Name Flags
index
accessingClass
public java.lang.String toMethodDescriptor();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic jdk.vm.ci.hotspot.HotSpotSignature.$assertionsDisabled:Z
ifne 1
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
aload 0
invokespecial jdk.vm.ci.meta.Signature.toMethodDescriptor:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
public jdk.vm.ci.meta.JavaKind getReturnKind();
descriptor: ()Ljdk/vm/ci/meta/JavaKind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
invokestatic jdk.vm.ci.meta.JavaKind.fromTypeString:(Ljava/lang/String;)Ljdk/vm/ci/meta/JavaKind;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
public jdk.vm.ci.meta.JavaType getReturnType(jdk.vm.ci.meta.ResolvedJavaType);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.getUnresolvedOrPrimitiveType:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljava/lang/String;)Ljdk/vm/ci/meta/JavaType;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnTypeCache:Ljdk/vm/ci/meta/ResolvedJavaType;
aload 1
invokestatic jdk.vm.ci.hotspot.HotSpotSignature.checkValidCache:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/ResolvedJavaType;)Z
ifne 8
3: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.runtime:Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
aload 1
checkcast jdk.vm.ci.hotspot.HotSpotResolvedObjectType
iconst_0
invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.lookupType:(Ljava/lang/String;Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;Z)Ljdk/vm/ci/meta/JavaType;
astore 2
start local 2 4: aload 2
instanceof jdk.vm.ci.meta.ResolvedJavaType
ifeq 7
5: aload 0
aload 2
checkcast jdk.vm.ci.meta.ResolvedJavaType
putfield jdk.vm.ci.hotspot.HotSpotSignature.returnTypeCache:Ljdk/vm/ci/meta/ResolvedJavaType;
6: goto 8
7: StackMap locals: jdk.vm.ci.meta.JavaType
StackMap stack:
aload 2
areturn
end local 2 8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnTypeCache:Ljdk/vm/ci/meta/ResolvedJavaType;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 9 1 accessingClass Ljdk/vm/ci/meta/ResolvedJavaType;
4 8 2 result Ljdk/vm/ci/meta/JavaType;
MethodParameters:
Name Flags
accessingClass
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "HotSpotSignature<"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof jdk.vm.ci.hotspot.HotSpotSignature
ifeq 6
1: aload 1
checkcast jdk.vm.ci.hotspot.HotSpotSignature
astore 2
start local 2 2: aload 2
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
3: getstatic jdk.vm.ci.hotspot.HotSpotSignature.$assertionsDisabled:Z
ifne 4
aload 2
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.parameters:Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: jdk.vm.ci.hotspot.HotSpotSignature
StackMap stack:
getstatic jdk.vm.ci.hotspot.HotSpotSignature.$assertionsDisabled:Z
ifne 5
aload 2
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.returnType:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
0 7 1 obj Ljava/lang/Object;
2 6 2 other Ljdk/vm/ci/hotspot/HotSpotSignature;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.vm.ci.hotspot.HotSpotSignature.originalString:Ljava/lang/String;
invokevirtual java.lang.String.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/vm/ci/hotspot/HotSpotSignature;
}
SourceFile: "HotSpotSignature.java"