class sun.jvm.hotspot.oops.GenerateOopMap$RetTable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.jvm.hotspot.oops.GenerateOopMap$RetTable
super_class: java.lang.Object
{
private sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry _first;
descriptor: Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
flags: (0x0002) ACC_PRIVATE
private static int _init_nof_entries;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private void addJsr(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap$RetTable._first:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 3
start local 3 1: goto 3
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry
StackMap stack:
2: aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.next:()Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 3
StackMap locals:
StackMap stack:
3: aload 3
ifnull 4
aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.targetBci:()I
iload 2
if_icmpne 2
4: StackMap locals:
StackMap stack:
aload 3
ifnonnull 7
5: new sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry
dup
iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap$RetTable._first:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.<init>:(ILsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;)V
astore 3
6: aload 0
aload 3
putfield sun.jvm.hotspot.oops.GenerateOopMap$RetTable._first:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
7: StackMap locals:
StackMap stack:
aload 3
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.addJsr:(I)V
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
0 9 1 return_bci I
0 9 2 target_bci I
1 9 3 entry Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
MethodParameters:
Name Flags
return_bci
target_bci
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
void computeRetTable(sun.jvm.hotspot.oops.Method);
descriptor: (Lsun/jvm/hotspot/oops/Method;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new sun.jvm.hotspot.interpreter.BytecodeStream
dup
aload 1
invokespecial sun.jvm.hotspot.interpreter.BytecodeStream.<init>:(Lsun/jvm/hotspot/oops/Method;)V
astore 2
start local 2 1: goto 6
start local 3 2: StackMap locals: sun.jvm.hotspot.interpreter.BytecodeStream int
StackMap stack:
iload 3
lookupswitch { // 2
168: 3
201: 5
default: 6
}
3: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.nextBCI:()I
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTable.addJsr:(II)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.nextBCI:()I
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest_w:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTable.addJsr:(II)V
end local 3 6: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
dup
istore 3
start local 3 7: ifge 2
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
0 9 1 method Lsun/jvm/hotspot/oops/Method;
1 9 2 i Lsun/jvm/hotspot/interpreter/BytecodeStream;
2 6 3 bytecode I
7 9 3 bytecode I
MethodParameters:
Name Flags
method
void updateRetTable(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap$RetTable._first:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 3
start local 3 1: goto 4
2: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry
StackMap stack:
aload 3
iload 1
iload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.addDelta:(II)V
3: aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.next:()Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 3
4: StackMap locals:
StackMap stack:
aload 3
ifnonnull 2
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
0 6 1 bci I
0 6 2 delta I
1 6 3 cur Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
MethodParameters:
Name Flags
bci
delta
sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry findJsrsForTarget(int);
descriptor: (I)Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap$RetTable._first:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 2
start local 2 1: goto 9
2: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 6
3: aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.targetBci:()I
iconst_m1
if_icmpeq 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.targetBci:()I
iload 1
if_icmpne 8
7: aload 2
areturn
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.next:()Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 2
9: StackMap locals:
StackMap stack:
aload 2
ifnonnull 2
10: new java.lang.RuntimeException
dup
ldc "Should not reach here"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
0 11 1 targBci I
1 11 2 cur Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
MethodParameters:
Name Flags
targBci
}
SourceFile: "GenerateOopMap.java"
NestHost: sun.jvm.hotspot.oops.GenerateOopMap
InnerClasses:
RetTable = sun.jvm.hotspot.oops.GenerateOopMap$RetTable of sun.jvm.hotspot.oops.GenerateOopMap
RetTableEntry = sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry of sun.jvm.hotspot.oops.GenerateOopMap