public class jdk.vm.ci.code.site.Infopoint extends jdk.vm.ci.code.site.Site implements java.lang.Comparable<jdk.vm.ci.code.site.Infopoint>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.vm.ci.code.site.Infopoint
super_class: jdk.vm.ci.code.site.Site
{
public final jdk.vm.ci.code.DebugInfo debugInfo;
descriptor: Ljdk/vm/ci/code/DebugInfo;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final jdk.vm.ci.code.site.InfopointReason reason;
descriptor: Ljdk/vm/ci/code/site/InfopointReason;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public void <init>(int, jdk.vm.ci.code.DebugInfo, jdk.vm.ci.code.site.InfopointReason);
descriptor: (ILjdk/vm/ci/code/DebugInfo;Ljdk/vm/ci/code/site/InfopointReason;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokespecial jdk.vm.ci.code.site.Site.<init>:(I)V
1: aload 0
aload 2
putfield jdk.vm.ci.code.site.Infopoint.debugInfo:Ljdk/vm/ci/code/DebugInfo;
2: aload 0
aload 3
putfield jdk.vm.ci.code.site.Infopoint.reason:Ljdk/vm/ci/code/site/InfopointReason;
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/vm/ci/code/site/Infopoint;
0 4 1 pcOffset I
0 4 2 debugInfo Ljdk/vm/ci/code/DebugInfo;
0 4 3 reason Ljdk/vm/ci/code/site/InfopointReason;
MethodParameters:
Name Flags
pcOffset
debugInfo
reason
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
2: aload 1
ldc "[<infopoint>]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: aload 1
aload 0
getfield jdk.vm.ci.code.site.Infopoint.debugInfo:Ljdk/vm/ci/code/DebugInfo;
invokestatic jdk.vm.ci.code.site.Infopoint.appendDebugInfo:(Ljava/lang/StringBuilder;Ljdk/vm/ci/code/DebugInfo;)V
4: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/vm/ci/code/site/Infopoint;
1 5 1 sb Ljava/lang/StringBuilder;
public int compareTo(jdk.vm.ci.code.site.Infopoint);
descriptor: (Ljdk/vm/ci/code/site/Infopoint;)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.code.site.Infopoint.pcOffset:I
aload 1
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
if_icmpge 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
aload 1
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
if_icmple 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield jdk.vm.ci.code.site.Infopoint.reason:Ljdk/vm/ci/code/site/InfopointReason;
aload 1
getfield jdk.vm.ci.code.site.Infopoint.reason:Ljdk/vm/ci/code/site/InfopointReason;
invokevirtual jdk.vm.ci.code.site.InfopointReason.compareTo:(Ljava/lang/Enum;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/vm/ci/code/site/Infopoint;
0 5 1 o Ljdk/vm/ci/code/site/Infopoint;
MethodParameters:
Name Flags
o
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 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnull 6
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpne 6
3: aload 1
checkcast jdk.vm.ci.code.site.Infopoint
astore 2
start local 2 4: aload 0
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
aload 2
getfield jdk.vm.ci.code.site.Infopoint.pcOffset:I
if_icmpne 6
aload 0
getfield jdk.vm.ci.code.site.Infopoint.debugInfo:Ljdk/vm/ci/code/DebugInfo;
aload 2
getfield jdk.vm.ci.code.site.Infopoint.debugInfo:Ljdk/vm/ci/code/DebugInfo;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 6
aload 0
getfield jdk.vm.ci.code.site.Infopoint.reason:Ljdk/vm/ci/code/site/InfopointReason;
aload 2
getfield jdk.vm.ci.code.site.Infopoint.reason:Ljdk/vm/ci/code/site/InfopointReason;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 6
5: 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/code/site/Infopoint;
0 7 1 obj Ljava/lang/Object;
4 6 2 that Ljdk/vm/ci/code/site/Infopoint;
MethodParameters:
Name Flags
obj
protected static void appendDebugInfo(java.lang.StringBuilder, jdk.vm.ci.code.DebugInfo);
descriptor: (Ljava/lang/StringBuilder;Ljdk/vm/ci/code/DebugInfo;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnull 22
1: aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.getReferenceMap:()Ljdk/vm/ci/code/ReferenceMap;
astore 2
start local 2 2: aload 2
ifnull 5
3: aload 0
aload 2
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 0
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: StackMap locals: jdk.vm.ci.code.ReferenceMap
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.getCalleeSaveInfo:()Ljdk/vm/ci/code/RegisterSaveLayout;
astore 3
start local 3 6: aload 3
ifnull 15
7: aload 0
ldc " callee-save-info["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: ldc ""
astore 4
start local 4 9: aload 3
iconst_1
invokevirtual jdk.vm.ci.code.RegisterSaveLayout.registersToSlots:(Z)Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 13
StackMap locals: java.lang.StringBuilder jdk.vm.ci.code.DebugInfo jdk.vm.ci.code.ReferenceMap jdk.vm.ci.code.RegisterSaveLayout java.lang.String top java.util.Iterator
StackMap stack:
10: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 11: aload 0
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "->"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
12: ldc ", "
astore 4
end local 5 13: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
14: aload 0
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 4 15: StackMap locals: java.lang.StringBuilder jdk.vm.ci.code.DebugInfo jdk.vm.ci.code.ReferenceMap jdk.vm.ci.code.RegisterSaveLayout
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.getBytecodePosition:()Ljdk/vm/ci/code/BytecodePosition;
astore 4
start local 4 16: aload 4
ifnull 22
17: aload 0
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual jdk.vm.ci.code.BytecodePosition.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 4
invokevirtual jdk.vm.ci.code.BytecodePosition.getBCI:()I
invokestatic jdk.vm.ci.meta.MetaUtil.appendLocation:(Ljava/lang/StringBuilder;Ljdk/vm/ci/meta/ResolvedJavaMethod;I)Ljava/lang/StringBuilder;
pop
18: aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.hasFrame:()Z
ifeq 22
19: aload 0
ldc " #locals="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.frame:()Ljdk/vm/ci/code/BytecodeFrame;
getfield jdk.vm.ci.code.BytecodeFrame.numLocals:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " #expr="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.frame:()Ljdk/vm/ci/code/BytecodeFrame;
getfield jdk.vm.ci.code.BytecodeFrame.numStack:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
20: aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.frame:()Ljdk/vm/ci/code/BytecodeFrame;
getfield jdk.vm.ci.code.BytecodeFrame.numLocks:I
ifle 22
21: aload 0
ldc " #locks="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual jdk.vm.ci.code.DebugInfo.frame:()Ljdk/vm/ci/code/BytecodeFrame;
getfield jdk.vm.ci.code.BytecodeFrame.numLocks:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
end local 4 end local 3 end local 2 22: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 sb Ljava/lang/StringBuilder;
0 23 1 info Ljdk/vm/ci/code/DebugInfo;
2 22 2 refMap Ljdk/vm/ci/code/ReferenceMap;
6 22 3 calleeSaveInfo Ljdk/vm/ci/code/RegisterSaveLayout;
9 15 4 sep Ljava/lang/String;
11 13 5 e Ljava/util/Map$Entry<Ljdk/vm/ci/code/Register;Ljava/lang/Integer;>;
16 22 4 codePos Ljdk/vm/ci/code/BytecodePosition;
MethodParameters:
Name Flags
sb
info
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast jdk.vm.ci.code.site.Infopoint
invokevirtual jdk.vm.ci.code.site.Infopoint.compareTo:(Ljdk/vm/ci/code/site/Infopoint;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljdk/vm/ci/code/site/Site;Ljava/lang/Comparable<Ljdk/vm/ci/code/site/Infopoint;>;
SourceFile: "Infopoint.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map