public class sun.jvm.hotspot.oops.GenerateOopMap
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.oops.GenerateOopMap
super_class: java.lang.Object
{
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int MAXARGSIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 256
private static final int MAX_LOCAL_VARS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 65536
private static final boolean TraceMonitorMismatch;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final boolean TraceOopMapRewrites;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
static sun.jvm.hotspot.oops.CellTypeState[] epsilonCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState refCTS;
descriptor: Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState valCTS;
descriptor: Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] rCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] rrCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vrCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vvCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] rvrCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vvrCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vvvCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vvvrCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
static sun.jvm.hotspot.oops.CellTypeState[] vvvvCTS;
descriptor: [Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0008) ACC_STATIC
protected static final int bad_monitors;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: -1
sun.jvm.hotspot.oops.Method _method;
descriptor: Lsun/jvm/hotspot/oops/Method;
flags: (0x0000)
sun.jvm.hotspot.oops.GenerateOopMap$RetTable _rt;
descriptor: Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
flags: (0x0000)
int _max_locals;
descriptor: I
flags: (0x0000)
int _max_stack;
descriptor: I
flags: (0x0000)
int _max_monitors;
descriptor: I
flags: (0x0000)
boolean _has_exceptions;
descriptor: Z
flags: (0x0000)
boolean _got_error;
descriptor: Z
flags: (0x0000)
java.lang.String _error_msg;
descriptor: Ljava/lang/String;
flags: (0x0000)
boolean _monitor_safe;
descriptor: Z
flags: (0x0000)
int _state_len;
descriptor: I
flags: (0x0000)
sun.jvm.hotspot.oops.CellTypeStateList _state;
descriptor: Lsun/jvm/hotspot/oops/CellTypeStateList;
flags: (0x0000)
char[] _state_vec_buf;
descriptor: [C
flags: (0x0000)
int _stack_top;
descriptor: I
flags: (0x0000)
int _monitor_top;
descriptor: I
flags: (0x0000)
int _report_for_exit_bci;
descriptor: I
flags: (0x0000)
int _matching_enter_bci;
descriptor: I
flags: (0x0000)
sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock[] _basic_blocks;
descriptor: [Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
flags: (0x0000)
int _gc_points;
descriptor: I
flags: (0x0000)
int _bb_count;
descriptor: I
flags: (0x0000)
sun.jvm.hotspot.utilities.BitMap _bb_hdr_bits;
descriptor: Lsun/jvm/hotspot/utilities/BitMap;
flags: (0x0000)
boolean _report_result;
descriptor: Z
flags: (0x0000)
boolean _report_result_for_send;
descriptor: Z
flags: (0x0000)
sun.jvm.hotspot.interpreter.BytecodeStream _itr_send;
descriptor: Lsun/jvm/hotspot/interpreter/BytecodeStream;
flags: (0x0000)
java.util.List<java.lang.Integer> _init_vars;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljava/lang/Integer;>;
boolean _conflict;
descriptor: Z
flags: (0x0000)
int _nof_refval_conflicts;
descriptor: I
flags: (0x0000)
int[] _new_var_map;
descriptor: [I
flags: (0x0000)
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_1
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.epsilonCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
1: getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
putstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
2: getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
putstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
3: iconst_2
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
4: iconst_2
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
5: iconst_3
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.rrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
6: iconst_3
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
7: iconst_3
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
8: iconst_4
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_3
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.rvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
9: iconst_4
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_3
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
10: iconst_4
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_3
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
11: iconst_5
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_3
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_4
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
12: iconst_5
anewarray sun.jvm.hotspot.oops.CellTypeState
dup
iconst_0
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_2
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_3
getstatic sun.jvm.hotspot.oops.CellTypeState.value:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
dup
iconst_4
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
putstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
13: return
LocalVariableTable:
Start End Slot Name Signature
void initState();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
iadd
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
1: aload 0
new sun.jvm.hotspot.oops.CellTypeStateList
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
invokespecial sun.jvm.hotspot.oops.CellTypeStateList.<init>:(I)V
putfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
2: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
iconst_1
invokestatic java.lang.Math.max:(II)I
invokestatic java.lang.Math.max:(II)I
invokestatic java.lang.Math.max:(II)I
newarray 5
putfield sun.jvm.hotspot.oops.GenerateOopMap._state_vec_buf:[C
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void makeContextUninitialized();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: sun.jvm.hotspot.oops.CellTypeStateList int
StackMap stack:
aload 1
iload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.CellTypeState.uninit:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
if_icmplt 3
end local 2 6: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
7: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
1 9 1 vs Lsun/jvm/hotspot/oops/CellTypeStateList;
2 6 2 i I
int methodsigToEffect(sun.jvm.hotspot.oops.Symbol, boolean, sun.jvm.hotspot.oops.CellTypeStateList);
descriptor: (Lsun/jvm/hotspot/oops/Symbol;ZLsun/jvm/hotspot/oops/CellTypeStateList;)I
flags: (0x0000)
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new sun.jvm.hotspot.oops.GenerateOopMap$ComputeEntryStack
dup
aload 1
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$ComputeEntryStack.<init>:(Lsun/jvm/hotspot/oops/Symbol;)V
astore 4
start local 4 1: aload 4
iload 2
aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$ComputeEntryStack.computeForParameters:(ZLsun/jvm/hotspot/oops/CellTypeStateList;)I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 2 1 signature Lsun/jvm/hotspot/oops/Symbol;
0 2 2 isStatic Z
0 2 3 effect Lsun/jvm/hotspot/oops/CellTypeStateList;
1 2 4 ces Lsun/jvm/hotspot/oops/GenerateOopMap$ComputeEntryStack;
MethodParameters:
Name Flags
signature
isStatic
effect
boolean mergeStateVectors(sun.jvm.hotspot.oops.CellTypeStateList, sun.jvm.hotspot.oops.CellTypeStateList);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;)Z
flags: (0x0000)
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iadd
istore 4
start local 4 1: iconst_0
istore 5
start local 5 2: iload 4
iconst_1
isub
istore 3
start local 3 3: goto 10
4: StackMap locals: int int int
StackMap stack:
aload 1
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeState.merge:(Lsun/jvm/hotspot/oops/CellTypeState;I)Lsun/jvm/hotspot/oops/CellTypeState;
astore 6
start local 6 5: iload 5
ifne 6
aload 6
aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: istore 5
8: aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 6
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
end local 6 9: iinc 3 -1
StackMap locals:
StackMap stack:
10: iload 3
ifge 4
11: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
ifle 22
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 22
12: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
iadd
istore 6
start local 6 13: iload 6
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iadd
istore 4
14: iload 4
iconst_1
isub
istore 3
goto 21
15: StackMap locals: int
StackMap stack:
aload 1
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeState.merge:(Lsun/jvm/hotspot/oops/CellTypeState;I)Lsun/jvm/hotspot/oops/CellTypeState;
astore 7
start local 7 16: iload 5
ifne 17
aload 7
aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 17
iconst_0
goto 18
StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
17: iconst_1
StackMap locals:
StackMap stack: int
18: istore 5
19: aload 2
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 7
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
end local 7 20: iinc 3 -1
StackMap locals:
StackMap stack:
21: iload 3
iload 6
if_icmpge 15
end local 6 22: StackMap locals:
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 23 1 cts Lsun/jvm/hotspot/oops/CellTypeStateList;
0 23 2 bbts Lsun/jvm/hotspot/oops/CellTypeStateList;
3 23 3 i I
1 23 4 len I
2 23 5 change Z
5 9 6 v Lsun/jvm/hotspot/oops/CellTypeState;
13 22 6 base I
16 20 7 v Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
cts
bbts
void copyState(sun.jvm.hotspot.oops.CellTypeStateList, sun.jvm.hotspot.oops.CellTypeStateList);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iadd
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: int int
StackMap stack:
aload 2
iload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isNonlockReference:()Z
ifeq 6
4: aload 1
iload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
iload 4
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeSlotRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
iload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 3
if_icmplt 3
end local 4 9: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
ifle 17
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 17
10: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
iadd
istore 4
start local 4 11: iload 4
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iadd
istore 3
12: iload 4
istore 5
start local 5 13: goto 16
14: StackMap locals: int
StackMap stack:
aload 1
iload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
iload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
15: iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
iload 3
if_icmplt 14
end local 5 end local 4 17: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 18 1 dst Lsun/jvm/hotspot/oops/CellTypeStateList;
0 18 2 src Lsun/jvm/hotspot/oops/CellTypeStateList;
1 18 3 len I
2 9 4 i I
11 17 4 base I
13 17 5 i I
MethodParameters:
Name Flags
dst
src
void mergeStateIntoBB(sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock);
descriptor: (Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 2
1: aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isAlive:()Z
ldc "merging state into a dead basicblock"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._stack_top:I
if_icmpne 12
3: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
if_icmpne 7
4: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.mergeStateVectors:(Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;)Z
ifeq 21
5: aload 1
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
6: goto 21
7: StackMap locals:
StackMap stack:
aload 0
ldc "monitor stack height merge conflict"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
8: aload 1
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
9: aload 1
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
10: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
11: goto 21
StackMap locals:
StackMap stack:
12: aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isReachable:()Z
ifne 18
13: aload 0
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.copyState:(Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;)V
14: aload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._stack_top:I
15: aload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
16: aload 1
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
17: goto 21
18: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "stack height conflict: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
19: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " vs. "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._stack_top:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 22 1 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bb
void mergeState(int, int[]);
descriptor: (I[I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockAt:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.mergeStateIntoBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 2 1 bci I
0 2 2 data [I
MethodParameters:
Name Flags
bci
data
void setVar(int, sun.jvm.hotspot.oops.CellTypeState);
descriptor: (ILsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 5
1: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isReference:()Z
ifne 2
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isValue:()Z
ifne 2
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isAddress:()Z
ifne 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
3: StackMap locals:
StackMap stack: int
ldc "wrong celltypestate"
4: invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
5: StackMap locals:
StackMap stack:
iload 1
iflt 6
iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
if_icmple 7
6: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "variable write error: r"
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 java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 9 1 localNo I
0 9 2 cts Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
localNo
cts
sun.jvm.hotspot.oops.CellTypeState getVar(int);
descriptor: (I)Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
iadd
if_icmpge 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "variable read error"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
iload 1
iflt 5
iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
if_icmple 6
5: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "variable read error: r"
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 java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.copy:()Lsun/jvm/hotspot/oops/CellTypeState;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 7 1 localNo I
MethodParameters:
Name Flags
localNo
sun.jvm.hotspot.oops.CellTypeState pop();
descriptor: ()Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
ifgt 2
1: new java.lang.RuntimeException
dup
ldc "stack underflow"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iconst_1
isub
dup_x1
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.copy:()Lsun/jvm/hotspot/oops/CellTypeState;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void push(sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
if_icmplt 2
1: new java.lang.RuntimeException
dup
ldc "stack overflow"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
dup_x1
iconst_1
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 4 1 cts Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
cts
sun.jvm.hotspot.oops.CellTypeState monitorPop();
descriptor: ()Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "monitorPop called on error monitor stack"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifne 9
5: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
6: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
7: aload 0
ldc "monitor stack underflow"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
8: getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
areturn
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitors:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_1
isub
dup_x1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.copy:()Lsun/jvm/hotspot/oops/CellTypeState;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void monitorPush(sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "monitorPush called on error monitor stack"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
if_icmplt 9
5: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
6: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
7: aload 0
ldc "monitor stack overflow"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
8: return
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitors:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
dup_x1
iconst_1
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 11 1 cts Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
cts
sun.jvm.hotspot.oops.CellTypeStateList vars();
descriptor: ()Lsun/jvm/hotspot/oops/CellTypeStateList;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
sun.jvm.hotspot.oops.CellTypeStateList stack();
descriptor: ()Lsun/jvm/hotspot/oops/CellTypeStateList;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.size:()I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.subList:(II)Lsun/jvm/hotspot/oops/CellTypeStateList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
sun.jvm.hotspot.oops.CellTypeStateList monitors();
descriptor: ()Lsun/jvm/hotspot/oops/CellTypeStateList;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
iadd
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.size:()I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.subList:(II)Lsun/jvm/hotspot/oops/CellTypeStateList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void replaceAllCTSMatches(sun.jvm.hotspot.oops.CellTypeState, sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iadd
istore 4
start local 4 1: iload 4
iconst_1
isub
istore 3
start local 3 2: goto 6
3: StackMap locals: int int
StackMap stack:
aload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 5
4: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
5: StackMap locals:
StackMap stack:
iinc 3 -1
StackMap locals:
StackMap stack:
6: iload 3
ifge 3
7: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifle 15
8: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
iadd
istore 5
start local 5 9: iload 5
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iadd
istore 4
10: iload 4
iconst_1
isub
istore 3
goto 14
11: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 13
12: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
13: StackMap locals:
StackMap stack:
iinc 3 -1
StackMap locals:
StackMap stack:
14: iload 3
iload 5
if_icmpge 11
end local 5 15: StackMap locals:
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 16 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 16 1 match Lsun/jvm/hotspot/oops/CellTypeState;
0 16 2 replace Lsun/jvm/hotspot/oops/CellTypeState;
2 16 3 i I
1 16 4 len I
9 15 5 base I
MethodParameters:
Name Flags
match
replace
void printStates(java.io.PrintStream, sun.jvm.hotspot.oops.CellTypeStateList, int);
descriptor: (Ljava/io/PrintStream;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 2
iload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.print:(Ljava/io/PrintStream;)V
3: iinc 4 1
StackMap locals:
StackMap stack:
4: iload 4
iload 3
if_icmplt 2
end local 4 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;
0 6 1 tty Ljava/io/PrintStream;
0 6 2 vector Lsun/jvm/hotspot/oops/CellTypeStateList;
0 6 3 num I
1 5 4 i I
MethodParameters:
Name Flags
tty
vector
num
void printCurrentState(java.io.PrintStream, sun.jvm.hotspot.interpreter.BytecodeStream, boolean);
descriptor: (Ljava/io/PrintStream;Lsun/jvm/hotspot/interpreter/BytecodeStream;Z)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 20
1: aload 1
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " vars = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
2: aload 0
aload 1
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.printStates:(Ljava/io/PrintStream;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
3: aload 1
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
4: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
tableswitch { // 182 - 186
182: 5
183: 5
184: 5
185: 5
186: 5
default: 9
}
5: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.hasIndexU4:()Z
ifeq 6
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU4:()I
goto 7
StackMap locals:
StackMap stack:
6: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2:()I
StackMap locals:
StackMap stack: int
7: istore 4
start local 4 8: aload 1
new java.lang.StringBuilder
dup
ldc " idx "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
end local 4 9: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.PrintStream.println:()V
10: aload 1
ldc " stack = "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
11: aload 0
aload 1
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.printStates:(Ljava/io/PrintStream;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
12: aload 1
invokevirtual java.io.PrintStream.println:()V
13: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 17
14: aload 1
ldc " monitors = "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
15: aload 0
aload 1
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitors:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.printStates:(Ljava/io/PrintStream;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 1
ldc " [bad monitor stack]"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
18: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.PrintStream.println:()V
19: goto 36
20: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " vars = '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stateVecToString:(Lsun/jvm/hotspot/oops/CellTypeStateList;I)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;
22: invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
23: aload 1
new java.lang.StringBuilder
dup
ldc " stack = '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stateVecToString:(Lsun/jvm/hotspot/oops/CellTypeStateList;I)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;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
24: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 29
25: aload 1
new java.lang.StringBuilder
dup
ldc " monitors = '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitors:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stateVecToString:(Lsun/jvm/hotspot/oops/CellTypeStateList;I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' \t"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
28: goto 30
29: StackMap locals:
StackMap stack:
aload 1
ldc " [bad monitor stack]"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
30: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
tableswitch { // 182 - 186
182: 31
183: 31
184: 31
185: 31
186: 31
default: 35
}
31: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.hasIndexU4:()Z
ifeq 32
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU4:()I
goto 33
StackMap locals:
StackMap stack:
32: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2:()I
StackMap locals:
StackMap stack: int
33: istore 4
start local 4 34: aload 1
new java.lang.StringBuilder
dup
ldc " idx "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
end local 4 35: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.PrintStream.println:()V
36: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 37 1 tty Ljava/io/PrintStream;
0 37 2 currentBC Lsun/jvm/hotspot/interpreter/BytecodeStream;
0 37 3 detailed Z
8 9 4 idx I
34 35 4 idx I
MethodParameters:
Name Flags
tty
currentBC
detailed
void reportMonitorMismatch(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc " Monitor mismatch in method "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
2: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual sun.jvm.hotspot.oops.Method.printValueOn:(Ljava/io/PrintStream;)V
3: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc ": "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 5 1 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
void initializeBB();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._gc_points:I
1: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
2: aload 0
new sun.jvm.hotspot.utilities.BitMap
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
l2i
invokespecial sun.jvm.hotspot.utilities.BitMap.<init>:(I)V
putfield sun.jvm.hotspot.oops.GenerateOopMap._bb_hdr_bits:Lsun/jvm/hotspot/utilities/BitMap;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void markBBHeadersAndCountGCPoints();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.initializeBB:()V
1: iconst_0
istore 1
start local 1 2: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.hasExceptionTable:()Z
ifeq 9
3: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getExceptionTable:()[Lsun/jvm/hotspot/oops/ExceptionTableElement;
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: goto 8
6: StackMap locals: int sun.jvm.hotspot.oops.ExceptionTableElement[] int
StackMap stack:
aload 0
aload 2
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getHandlerPC:()I
aconst_null
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markBB:(I[I)V
7: iinc 3 1
StackMap locals:
StackMap stack:
8: iload 3
aload 2
arraylength
if_icmplt 6
end local 3 end local 2 9: StackMap locals:
StackMap stack:
new sun.jvm.hotspot.interpreter.BytecodeStream
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokespecial sun.jvm.hotspot.interpreter.BytecodeStream.<init>:(Lsun/jvm/hotspot/oops/Method;)V
astore 2
start local 2 10: goto 32
start local 3 11: StackMap locals: sun.jvm.hotspot.interpreter.BytecodeStream int
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
istore 4
start local 4 12: iload 1
ifne 14
13: aload 0
iload 4
aconst_null
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markBB:(I[I)V
14: StackMap locals: int
StackMap stack:
aload 0
aload 2
15: new sun.jvm.hotspot.oops.GenerateOopMap$1
dup
aload 0
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$1.<init>:(Lsun/jvm/hotspot/oops/GenerateOopMap;)V
16: aconst_null
17: invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.jumpTargetsDo:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;[I)Z
istore 1
18: iload 3
lookupswitch { // 2
168: 19
201: 25
default: 30
}
19: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 23
20: iload 1
ifeq 21
iconst_0
goto 22
StackMap locals:
StackMap stack:
21: iconst_1
StackMap locals:
StackMap stack: int
22: ldc "should not happen"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
23: StackMap locals:
StackMap stack:
aload 0
iload 4
iload 3
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthFor:(I)I
iadd
aconst_null
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markBB:(I[I)V
24: goto 30
25: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 29
26: iload 1
ifeq 27
iconst_0
goto 28
StackMap locals:
StackMap stack:
27: iconst_1
StackMap locals:
StackMap stack: int
28: ldc "should not happen"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
29: StackMap locals:
StackMap stack:
aload 0
iload 4
iload 3
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthFor:(I)I
iadd
aconst_null
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markBB:(I[I)V
30: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.possibleGCPoint:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)Z
ifeq 32
31: aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._gc_points:I
iconst_1
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._gc_points:I
end local 4 end local 3 32: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
dup
istore 3
start local 3 33: ifge 11
34: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
2 35 1 fellThrough Z
4 9 2 excps [Lsun/jvm/hotspot/oops/ExceptionTableElement;
5 9 3 i I
10 35 2 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
11 32 3 bytecode I
33 35 3 bytecode I
12 32 4 bci I
boolean (int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_hdr_bits:Lsun/jvm/hotspot/utilities/BitMap;
iload 1
invokevirtual sun.jvm.hotspot.utilities.BitMap.at:(I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 1 1 bci I
MethodParameters:
Name Flags
bci
int gcPoints();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._gc_points:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
int bbCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void setBBMarkBit(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_hdr_bits:Lsun/jvm/hotspot/utilities/BitMap;
iload 1
iconst_1
invokevirtual sun.jvm.hotspot.utilities.BitMap.atPut:(IZ)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 2 1 bci I
MethodParameters:
Name Flags
bci
void clear_bbmark_bit(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_hdr_bits:Lsun/jvm/hotspot/utilities/BitMap;
iload 1
iconst_0
invokevirtual sun.jvm.hotspot.utilities.BitMap.atPut:(IZ)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 2 1 bci I
MethodParameters:
Name Flags
bci
sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock getBasicBlockAt(int);
descriptor: (I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockContaining:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 2
start local 2 1: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 5
2: aload 2
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
iload 1
if_icmpne 3
iconst_1
goto 4
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: ldc "should have found BB"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 bci I
1 6 2 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bci
sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock getBasicBlockContaining(int);
descriptor: (I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
iconst_1
isub
istore 4
start local 4 3: goto 23
4: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock[] int int
StackMap stack:
iload 3
iload 4
iadd
iconst_2
idiv
istore 5
start local 5 5: aload 2
iload 5
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
istore 6
start local 6 6: iload 5
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
iconst_1
isub
if_icmpne 12
7: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 11
8: iload 1
iload 6
if_icmplt 9
iload 1
i2l
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
lcmp
ifge 9
iconst_1
goto 10
StackMap locals: int int
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: ldc "sanity check failed"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
11: StackMap locals:
StackMap stack:
aload 2
iload 5
aaload
areturn
12: StackMap locals:
StackMap stack:
aload 2
iload 5
iconst_1
iadd
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
istore 7
start local 7 13: iload 6
iload 1
if_icmpgt 15
iload 1
iload 7
if_icmpge 15
14: aload 2
iload 5
aaload
areturn
15: StackMap locals: int
StackMap stack:
iload 6
iload 1
if_icmpge 18
16: iload 5
iconst_1
iadd
istore 3
17: goto 23
18: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 22
19: iload 6
iload 1
if_icmple 20
iconst_1
goto 21
StackMap locals:
StackMap stack:
20: iconst_0
StackMap locals:
StackMap stack: int
21: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
22: StackMap locals:
StackMap stack:
iload 5
iconst_1
isub
istore 4
end local 7 end local 6 end local 5 23: StackMap locals:
StackMap stack:
iload 3
iload 4
if_icmple 4
24: new java.lang.RuntimeException
dup
ldc "should have found BB"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 25 1 bci I
1 25 2 bbs [Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
2 25 3 lo I
3 25 4 hi I
5 23 5 m I
6 23 6 mbci I
13 23 7 nbci I
MethodParameters:
Name Flags
bci
void interpBB(sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock);
descriptor: (Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 2
1: aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isReachable:()Z
ldc "should be reachable or deadcode exist"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.restoreState:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
3: new sun.jvm.hotspot.interpreter.BytecodeStream
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokespecial sun.jvm.hotspot.interpreter.BytecodeStream.<init>:(Lsun/jvm/hotspot/oops/Method;)V
astore 2
start local 2 4: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.nextBBStartPC:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
istore 3
start local 3 5: aload 2
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
iload 3
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.setInterval:(II)V
6: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 10
7: iload 3
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
if_icmpeq 8
iconst_1
goto 9
StackMap locals: sun.jvm.hotspot.interpreter.BytecodeStream int
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: ldc "must be at least one instruction in a basicblock"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
10: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
pop
11: goto 16
12: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._has_exceptions:Z
ifne 13
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifeq 14
13: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doExceptionEdge:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
14: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interp1:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
15: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
pop
16: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.nextBCI:()I
iload 3
if_icmpge 17
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 12
17: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 44
18: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 22
19: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.nextBCI:()I
iload 3
if_icmpne 20
iconst_1
goto 21
StackMap locals:
StackMap stack:
20: iconst_0
StackMap locals:
StackMap stack: int
21: ldc "must point to end"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
22: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._has_exceptions:Z
ifne 23
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifeq 24
23: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doExceptionEdge:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
24: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interp1:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
25: aload 0
aload 2
new sun.jvm.hotspot.oops.GenerateOopMap$2
dup
aload 0
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$2.<init>:(Lsun/jvm/hotspot/oops/GenerateOopMap;)V
26: aconst_null
27: invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.jumpTargetsDo:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;[I)Z
istore 4
start local 4 28: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 29
return
29: StackMap locals: int
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
sipush 169
if_icmpne 38
30: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 34
31: iload 4
ifeq 32
iconst_0
goto 33
StackMap locals:
StackMap stack:
32: iconst_1
StackMap locals:
StackMap stack: int
33: ldc "cannot be set if ret instruction"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
34: StackMap locals:
StackMap stack:
aload 0
aload 2
new sun.jvm.hotspot.oops.GenerateOopMap$3
dup
aload 0
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$3.<init>:(Lsun/jvm/hotspot/oops/GenerateOopMap;)V
35: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
aconst_null
36: invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.retJumpTargetsDo:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;I[I)V
37: goto 44
StackMap locals:
StackMap stack:
38: iload 4
ifeq 44
39: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 43
40: iload 3
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.bbIndex:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
iconst_1
iadd
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
if_icmpne 41
iconst_1
goto 42
StackMap locals:
StackMap stack:
41: iconst_0
StackMap locals:
StackMap stack: int
42: ldc "there must be another bb"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
43: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.bbIndex:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
iconst_1
iadd
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.mergeStateIntoBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
end local 4 44: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 45 1 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
4 45 2 itr Lsun/jvm/hotspot/interpreter/BytecodeStream;
5 45 3 lim_bci I
28 44 4 fall_through Z
MethodParameters:
Name Flags
bb
void restoreState(sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock);
descriptor: (Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: iinc 2 1
StackMap locals:
StackMap stack:
4: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
if_icmplt 2
end local 2 5: aload 0
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._stack_top:I
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
6: aload 0
aload 1
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 8 1 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
1 5 2 i I
MethodParameters:
Name Flags
bb
int nextBBStartPC(sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock);
descriptor: (Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.bbIndex:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
iconst_1
iadd
istore 2
start local 2 1: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmpne 3
2: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
l2i
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 4 1 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
1 4 2 bbNum I
MethodParameters:
Name Flags
bb
void updateBasicBlocks(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new sun.jvm.hotspot.utilities.BitMap
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
iload 2
i2l
ladd
l2i
invokespecial sun.jvm.hotspot.utilities.BitMap.<init>:(I)V
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: sun.jvm.hotspot.utilities.BitMap int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 4
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
iload 1
if_icmple 6
4: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 4
aaload
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
iload 2
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
5: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 4
aaload
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
iload 2
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
6: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 4
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
iconst_1
invokevirtual sun.jvm.hotspot.utilities.BitMap.atPut:(IZ)V
7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmplt 3
end local 4 9: aload 0
aload 3
putfield sun.jvm.hotspot.oops.GenerateOopMap._bb_hdr_bits:Lsun/jvm/hotspot/utilities/BitMap;
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 11 1 bci I
0 11 2 delta I
1 11 3 bbBits Lsun/jvm/hotspot/utilities/BitMap;
2 9 4 k I
MethodParameters:
Name Flags
bci
delta
void markBB(int, int[]);
descriptor: (I[I)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: iload 1
iflt 2
iload 1
i2l
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
lcmp
ifge 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "index out of bounds"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.isBBHeader:(I)Z
ifeq 6
5: return
6: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.setBBMarkBit:(I)V
7: aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
iconst_1
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 9 1 bci I
0 9 2 data [I
MethodParameters:
Name Flags
bci
data
void markReachableCode();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=8, args_size=1
start local 0 0: iconst_1
newarray 10
astore 1
start local 1 1: aload 1
iconst_0
iconst_1
iastore
2: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iconst_0
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.markAsAlive:()V
3: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.hasExceptionTable:()Z
ifeq 12
4: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getExceptionTable:()[Lsun/jvm/hotspot/oops/ExceptionTableElement;
astore 2
start local 2 5: iconst_0
istore 3
start local 3 6: goto 11
7: StackMap locals: int[] sun.jvm.hotspot.oops.ExceptionTableElement[] int
StackMap stack:
aload 0
aload 2
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getHandlerPC:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockAt:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 4
start local 4 8: aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isDead:()Z
ifeq 10
9: aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.markAsAlive:()V
end local 4 10: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 2
arraylength
if_icmplt 7
end local 3 end local 2 12: StackMap locals:
StackMap stack:
new sun.jvm.hotspot.interpreter.BytecodeStream
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokespecial sun.jvm.hotspot.interpreter.BytecodeStream.<init>:(Lsun/jvm/hotspot/oops/Method;)V
astore 2
start local 2 13: goto 42
14: StackMap locals: sun.jvm.hotspot.interpreter.BytecodeStream
StackMap stack:
aload 1
iconst_0
iconst_0
iastore
15: iconst_0
istore 3
start local 3 16: goto 41
17: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 3
aaload
astore 4
start local 4 18: aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isAlive:()Z
ifeq 40
19: aload 2
aload 4
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.setStart:(I)V
20: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
pop
21: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
istore 5
start local 5 22: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
istore 6
start local 6 23: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 27
24: iload 6
aload 4
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
if_icmpne 25
iconst_1
goto 26
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock int int
StackMap stack:
25: iconst_0
StackMap locals:
StackMap stack: int
26: ldc "wrong bci"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
27: StackMap locals:
StackMap stack:
aload 0
aload 2
new sun.jvm.hotspot.oops.GenerateOopMap$4
dup
aload 0
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$4.<init>:(Lsun/jvm/hotspot/oops/GenerateOopMap;)V
28: aload 1
29: invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.jumpTargetsDo:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;[I)Z
istore 7
start local 7 30: iload 5
lookupswitch { // 2
168: 31
201: 31
default: 36
}
31: StackMap locals: int
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 35
32: iload 7
ifeq 33
iconst_0
goto 34
StackMap locals:
StackMap stack:
33: iconst_1
StackMap locals:
StackMap stack: int
34: ldc "should not happen"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
35: StackMap locals:
StackMap stack:
aload 0
iload 6
iload 5
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthFor:(I)I
iadd
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reachableBasicblock:(I[I)V
36: StackMap locals:
StackMap stack:
iload 7
ifeq 40
37: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 3
iconst_1
iadd
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isDead:()Z
ifeq 40
38: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 3
iconst_1
iadd
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.markAsAlive:()V
39: aload 1
iconst_0
iconst_1
iastore
end local 7 end local 6 end local 5 end local 4 40: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap int[] sun.jvm.hotspot.interpreter.BytecodeStream int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
41: iload 3
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmplt 17
end local 3 42: StackMap locals:
StackMap stack:
aload 1
iconst_0
iaload
ifne 14
43: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
1 44 1 change [I
5 12 2 excps [Lsun/jvm/hotspot/oops/ExceptionTableElement;
6 12 3 i I
8 10 4 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
13 44 2 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
16 42 3 i I
18 40 4 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
22 40 5 bytecode I
23 40 6 bci I
30 40 7 fell_through Z
void reachableBasicblock(int, int[]);
descriptor: (I[I)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: iload 1
iflt 2
iload 1
i2l
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
lcmp
ifge 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "index out of bounds"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockAt:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 3
start local 3 5: aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isDead:()Z
ifeq 8
6: aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.markAsAlive:()V
7: aload 2
iconst_0
iconst_1
iastore
8: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
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;
0 9 1 bci I
0 9 2 data [I
5 9 3 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bci
data
void doInterpretation();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._conflict:Z
1: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
2: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 3
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.initBasicBlocks:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 4
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.setupMethodEntryState:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 5
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interpAll:()V
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 6
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.rewriteRefvalConflicts:()V
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._conflict:Z
ifeq 7
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 0
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void initBasicBlocks();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=9, args_size=1
start local 0 0: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
anewarray sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
putfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
1: iconst_0
istore 1
start local 1 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 1
new sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
dup
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.<init>:()V
aastore
4: iinc 1 1
StackMap locals:
StackMap stack:
5: iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmplt 3
end local 1 6: new sun.jvm.hotspot.interpreter.BytecodeStream
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokespecial sun.jvm.hotspot.interpreter.BytecodeStream.<init>:(Lsun/jvm/hotspot/oops/Method;)V
astore 1
start local 1 7: iconst_0
istore 2
start local 2 8: iconst_0
istore 3
start local 3 9: iconst_m1
istore 4
start local 4 10: goto 26
11: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap sun.jvm.hotspot.interpreter.BytecodeStream int int int
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
sipush 194
if_icmpne 13
12: iinc 3 1
13: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
istore 5
start local 5 14: aload 0
iload 5
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.isBBHeader:(I)Z
ifeq 25
15: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
aaload
astore 6
start local 6 16: aload 6
iload 5
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
17: aload 6
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._max_locals:I
18: aload 6
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._max_stack:I
19: aload 6
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
20: aload 6
bipush -2
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._stack_top:I
21: aload 6
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
22: iload 2
ifle 24
23: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
iconst_1
isub
aaload
iload 4
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
24: StackMap locals: int sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
iinc 2 1
end local 6 25: StackMap locals:
StackMap stack:
iload 5
istore 4
end local 5 26: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.next:()I
ifge 11
27: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
iconst_1
isub
aaload
iload 4
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
28: aload 0
iload 3
putfield sun.jvm.hotspot.oops.GenerateOopMap._max_monitors:I
29: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.initState:()V
30: new sun.jvm.hotspot.oops.CellTypeStateList
dup
iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
imul
invokespecial sun.jvm.hotspot.oops.CellTypeStateList.<init>:(I)V
astore 5
start local 5 31: iconst_0
istore 6
start local 6 32: goto 43
33: StackMap locals: sun.jvm.hotspot.oops.CellTypeStateList int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 6
aaload
astore 7
start local 7 34: aload 7
aload 5
iload 6
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
imul
iload 6
iconst_1
iadd
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_len:I
imul
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.subList:(II)Lsun/jvm/hotspot/oops/CellTypeStateList;
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
35: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 42
36: iload 6
iconst_1
iadd
iload 2
if_icmpge 42
37: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
aload 7
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.javaLengthAt:(Lsun/jvm/hotspot/oops/Method;I)I
istore 8
start local 8 38: aload 7
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
iload 8
iadd
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 6
iconst_1
iadd
aaload
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._bci:I
if_icmpne 39
iconst_1
goto 40
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock int
StackMap stack:
39: iconst_0
40: StackMap locals:
StackMap stack: int
ldc "unmatched bci info in basicblock"
41: invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
end local 8 end local 7 42: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
43: iload 6
iload 2
if_icmplt 33
end local 6 44: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 50
45: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
iconst_1
isub
aaload
astore 6
start local 6 46: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
aload 6
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.javaLengthAt:(Lsun/jvm/hotspot/oops/Method;I)I
istore 7
start local 7 47: aload 6
getfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._end_bci:I
iload 7
iadd
i2l
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
lcmp
ifne 48
iconst_1
goto 49
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap sun.jvm.hotspot.interpreter.BytecodeStream int int int sun.jvm.hotspot.oops.CellTypeStateList sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock int
StackMap stack:
48: iconst_0
StackMap locals:
StackMap stack: int
49: ldc "wrong end bci"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
end local 7 end local 6 50: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmpeq 54
51: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmpge 53
52: new java.lang.RuntimeException
dup
ldc "jump into the middle of instruction?"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
53: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "extra basic blocks - should not happen?"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
54: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markReachableCode:()V
55: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
2 6 1 i I
7 56 1 j Lsun/jvm/hotspot/interpreter/BytecodeStream;
8 56 2 bbNo I
9 56 3 monitor_count I
10 56 4 prev_bci I
14 26 5 bci I
16 25 6 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
31 56 5 basicBlockState Lsun/jvm/hotspot/oops/CellTypeStateList;
32 44 6 blockNum I
34 42 7 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
38 42 8 bc_len I
46 50 6 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
47 50 7 bc_len I
void setupMethodEntryState();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.makeContextUninitialized:()V
1: aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getSignature:()Lsun/jvm/hotspot/oops/Symbol;
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.isStatic:()Z
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.methodsigToEffect:(Lsun/jvm/hotspot/oops/Symbol;ZLsun/jvm/hotspot/oops/CellTypeStateList;)I
pop
2: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.initializeVars:()V
3: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iconst_0
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.mergeStateIntoBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
4: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 6
5: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iconst_0
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.changed:()Z
ldc "we are not getting off the ground"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void interpAll();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=1
start local 0 0: iconst_1
istore 1
start local 1 1: goto 13
2: StackMap locals: int
StackMap stack:
iconst_0
istore 1
3: iconst_0
istore 2
start local 2 4: goto 12
5: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
aaload
astore 3
start local 3 6: aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.changed:()Z
ifeq 11
7: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 8
return
8: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
iconst_1
istore 1
9: aload 3
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
10: aload 0
aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interpBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
end local 3 11: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
12: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmpge 13
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 5
end local 2 13: StackMap locals:
StackMap stack:
iload 1
ifeq 14
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 2
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
1 15 1 change Z
4 13 2 i I
6 11 3 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
void interp1(sun.jvm.hotspot.interpreter.BytecodeStream);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._report_result:Z
ifeq 6
1: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
tableswitch { // 182 - 186
182: 2
183: 2
184: 2
185: 2
186: 2
default: 5
}
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield sun.jvm.hotspot.oops.GenerateOopMap._itr_send:Lsun/jvm/hotspot/interpreter/BytecodeStream;
3: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result_for_send:Z
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapForOpcodes:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
tableswitch { // 0 - 229
0: 7
1: 13
2: 15
3: 15
4: 15
5: 15
6: 15
7: 15
8: 15
9: 16
10: 16
11: 15
12: 15
13: 15
14: 16
15: 16
16: 15
17: 15
18: 18
19: 19
20: 17
21: 20
22: 21
23: 20
24: 21
25: 22
26: 23
27: 24
28: 25
29: 26
30: 27
31: 28
32: 29
33: 30
34: 23
35: 24
36: 25
37: 26
38: 27
39: 28
40: 29
41: 30
42: 31
43: 32
44: 33
45: 34
46: 35
47: 36
48: 35
49: 37
50: 38
51: 35
52: 35
53: 35
54: 39
55: 40
56: 39
57: 40
58: 41
59: 42
60: 43
61: 44
62: 45
63: 46
64: 47
65: 48
66: 49
67: 42
68: 43
69: 44
70: 45
71: 46
72: 47
73: 48
74: 49
75: 50
76: 51
77: 52
78: 53
79: 54
80: 55
81: 54
82: 55
83: 56
84: 54
85: 54
86: 54
87: 57
88: 58
89: 59
90: 60
91: 61
92: 62
93: 63
94: 64
95: 65
96: 66
97: 67
98: 66
99: 67
100: 66
101: 67
102: 66
103: 67
104: 66
105: 67
106: 66
107: 67
108: 66
109: 67
110: 66
111: 67
112: 66
113: 67
114: 66
115: 67
116: 68
117: 69
118: 68
119: 69
120: 66
121: 70
122: 66
123: 70
124: 66
125: 70
126: 66
127: 67
128: 66
129: 67
130: 66
131: 67
132: 10
133: 71
134: 68
135: 71
136: 66
137: 66
138: 69
139: 68
140: 71
141: 71
142: 66
143: 69
144: 66
145: 68
146: 68
147: 68
148: 72
149: 66
150: 66
151: 73
152: 73
153: 74
154: 74
155: 74
156: 74
157: 74
158: 74
159: 79
160: 79
161: 79
162: 79
163: 79
164: 79
165: 87
166: 87
167: 8
168: 88
169: 112
170: 74
171: 118
172: 76
173: 81
174: 76
175: 84
176: 106
177: 11
178: 90
179: 91
180: 92
181: 93
182: 94
183: 94
184: 95
185: 97
186: 96
187: 13
188: 98
189: 98
190: 100
191: 103
192: 99
193: 100
194: 101
195: 102
196: 111
197: 110
198: 109
199: 109
200: 9
201: 89
202: 119
203: 116
204: 119
205: 119
206: 119
207: 119
208: 115
209: 119
210: 119
211: 119
212: 119
213: 119
214: 119
215: 119
216: 119
217: 119
218: 119
219: 119
220: 117
221: 114
222: 113
223: 119
224: 119
225: 119
226: 119
227: 119
228: 118
229: 118
default: 119
}
7: StackMap locals:
StackMap stack:
goto 120
8: StackMap locals:
StackMap stack:
goto 120
9: StackMap locals:
StackMap stack:
goto 120
10: StackMap locals:
StackMap stack:
goto 120
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doReturnMonitorCheck:()V
12: goto 120
13: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
14: goto 120
15: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
16: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
17: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
18: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doLdc:(I)V
goto 120
19: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doLdc:(I)V
goto 120
20: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
21: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
22: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
23: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
24: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
25: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
26: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
27: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
28: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
29: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
30: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
31: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
32: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
33: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
34: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
35: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
36: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
37: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
38: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppNewRef:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
39: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
40: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
41: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndex:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doAstore:(I)V
goto 120
42: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
43: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
44: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
45: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
46: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
47: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
48: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
49: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppstore:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
50: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doAstore:(I)V
goto 120
51: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doAstore:(I)V
goto 120
52: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doAstore:(I)V
goto 120
53: StackMap locals:
StackMap stack:
aload 0
iconst_3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doAstore:(I)V
goto 120
54: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
55: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
56: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rvrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
57: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppopAny:(I)V
goto 120
58: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppopAny:(I)V
goto 120
59: StackMap locals:
StackMap stack:
aload 0
iconst_1
ldc "11"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
60: StackMap locals:
StackMap stack:
aload 0
iconst_2
ldc "121"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
61: StackMap locals:
StackMap stack:
aload 0
iconst_3
ldc "1321"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
62: StackMap locals:
StackMap stack:
aload 0
iconst_2
ldc "2121"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
63: StackMap locals:
StackMap stack:
aload 0
iconst_3
ldc "21321"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
64: StackMap locals:
StackMap stack:
aload 0
iconst_4
ldc "214321"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
65: StackMap locals:
StackMap stack:
aload 0
iconst_2
ldc "12"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppdupswap:(ILjava/lang/String;)V
goto 120
66: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
67: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
68: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
69: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
70: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
71: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
72: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
73: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvvvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
74: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
75: goto 120
76: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doReturnMonitorCheck:()V
77: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
78: goto 120
79: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
80: goto 120
81: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doReturnMonitorCheck:()V
82: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
83: goto 120
84: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doReturnMonitorCheck:()V
85: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
86: goto 120
87: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rrCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
88: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doJsr:(I)V
goto 120
89: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest_w:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doJsr:(I)V
goto 120
90: StackMap locals:
StackMap stack:
aload 0
iconst_1
iconst_1
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doField:(ZZII)V
goto 120
91: StackMap locals:
StackMap stack:
aload 0
iconst_0
iconst_1
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doField:(ZZII)V
goto 120
92: StackMap locals:
StackMap stack:
aload 0
iconst_1
iconst_0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doField:(ZZII)V
goto 120
93: StackMap locals:
StackMap stack:
aload 0
iconst_0
iconst_0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doField:(ZZII)V
goto 120
94: StackMap locals:
StackMap stack:
aload 0
iconst_0
iconst_0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMethod:(ZZII)V
goto 120
95: StackMap locals:
StackMap stack:
aload 0
iconst_1
iconst_0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMethod:(ZZII)V
goto 120
96: StackMap locals:
StackMap stack:
aload 0
iconst_1
iconst_0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU4:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMethod:(ZZII)V
goto 120
97: StackMap locals:
StackMap stack:
aload 0
iconst_0
iconst_1
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.getIndexU2Cpcache:()I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMethod:(ZZII)V
goto 120
98: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppNewRef:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
99: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doCheckcast:()V
goto 120
100: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
101: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMonitorenter:(I)V
goto 120
102: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMonitorexit:(I)V
goto 120
103: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._has_exceptions:Z
ifne 120
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifle 120
104: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
105: goto 120
106: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doReturnMonitorCheck:()V
107: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
108: goto 120
109: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
110: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
iconst_3
iadd
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.codeAt:(I)I
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doMultianewarray:(II)V
goto 120
111: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "Iterator should skip this bytecode"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
112: StackMap locals:
StackMap stack:
goto 120
113: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppNewRef:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
114: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
115: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
116: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppNewRef:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
117: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.rCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppload:([Lsun/jvm/hotspot/oops/CellTypeState;I)V
goto 120
118: StackMap locals:
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
goto 120
119: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "unexpected opcode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
120: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 121 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 121 1 itr Lsun/jvm/hotspot/interpreter/BytecodeStream;
MethodParameters:
Name Flags
itr
void doExceptionEdge(sun.jvm.hotspot.interpreter.BytecodeStream);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;)V
flags: (0x0000)
Code:
stack=4, locals=13, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.canTrap:(I)Z
ifne 1
return
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
lookupswitch { // 9
42: 2
172: 3
173: 3
174: 3
175: 3
176: 3
177: 3
195: 5
220: 2
default: 7
}
2: StackMap locals:
StackMap stack:
return
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifne 7
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpeq 7
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifeq 7
6: return
7: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._has_exceptions:Z
ifeq 35
8: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
istore 2
start local 2 9: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getExceptionTable:()[Lsun/jvm/hotspot/oops/ExceptionTableElement;
astore 3
start local 3 10: iconst_0
istore 4
start local 4 11: goto 34
12: StackMap locals: int sun.jvm.hotspot.oops.ExceptionTableElement[] int
StackMap stack:
aload 3
iload 4
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getStartPC:()I
istore 5
start local 5 13: aload 3
iload 4
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getEndPC:()I
istore 6
start local 6 14: aload 3
iload 4
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getHandlerPC:()I
istore 7
start local 7 15: aload 3
iload 4
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getCatchTypeIndex:()I
istore 8
start local 8 16: iload 5
iload 2
if_icmpgt 33
iload 2
iload 6
if_icmpge 33
17: aload 0
iload 7
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockAt:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 9
start local 9 18: aload 9
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
pop
19: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
astore 10
start local 10 20: aload 10
iconst_0
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.copy:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 11
start local 11 21: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
istore 12
start local 12 22: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 26
23: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMaxStack:()J
lconst_0
lcmp
ifle 24
iconst_1
goto 25
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap sun.jvm.hotspot.interpreter.BytecodeStream int sun.jvm.hotspot.oops.ExceptionTableElement[] int int int int int sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock sun.jvm.hotspot.oops.CellTypeStateList sun.jvm.hotspot.oops.CellTypeState int
StackMap stack:
24: iconst_0
StackMap locals:
StackMap stack: int
25: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
26: StackMap locals:
StackMap stack:
aload 10
iconst_0
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeSlotRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
27: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
28: aload 0
aload 9
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.mergeStateIntoBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
29: aload 10
iconst_0
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aload 11
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
30: aload 0
iload 12
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
31: iload 8
ifne 33
32: return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 33: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap sun.jvm.hotspot.interpreter.BytecodeStream int sun.jvm.hotspot.oops.ExceptionTableElement[] int
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
34: iload 4
aload 3
arraylength
if_icmplt 12
end local 4 end local 3 end local 2 35: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifne 37
36: return
37: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
ifeq 39
38: aload 0
ldc "non-empty monitor stack at exceptional exit"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
39: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
40: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 41 1 itr Lsun/jvm/hotspot/interpreter/BytecodeStream;
9 35 2 bci I
10 35 3 exct [Lsun/jvm/hotspot/oops/ExceptionTableElement;
11 35 4 i I
13 33 5 start_pc I
14 33 6 end_pc I
15 33 7 handler_pc I
16 33 8 catch_type I
18 33 9 excBB Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
20 33 10 cOpStck Lsun/jvm/hotspot/oops/CellTypeStateList;
21 33 11 cOpStck_0 Lsun/jvm/hotspot/oops/CellTypeState;
22 33 12 cOpStackTop I
MethodParameters:
Name Flags
itr
void checkType(sun.jvm.hotspot.oops.CellTypeState, sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equalKind:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifne 5
1: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "wrong type on stack (found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.toChar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " expected: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.toChar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 expected Lsun/jvm/hotspot/oops/CellTypeState;
0 6 2 actual Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
expected
actual
void ppstore(sun.jvm.hotspot.oops.CellTypeState[], int);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;I)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 11
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
aaload
astore 4
start local 4 3: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 5
start local 5 4: aload 0
aload 4
aload 5
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.checkType:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
5: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 9
6: iload 2
iflt 7
iconst_1
goto 8
StackMap locals: sun.jvm.hotspot.oops.CellTypeState sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 0
iload 2
iinc 2 1
aload 5
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.setVar:(ILsun/jvm/hotspot/oops/CellTypeState;)V
end local 5 end local 4 10: iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 1
arraylength
if_icmpge 12
aload 1
iload 3
aaload
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 2
end local 3 12: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 13 1 in [Lsun/jvm/hotspot/oops/CellTypeState;
0 13 2 loc_no I
1 12 3 i I
3 10 4 expected Lsun/jvm/hotspot/oops/CellTypeState;
4 10 5 actual Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
in
loc_no
void ppload(sun.jvm.hotspot.oops.CellTypeState[], int);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;I)V
flags: (0x0000)
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 29
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
aaload
astore 4
start local 4 3: aload 0
iload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getVar:(I)Lsun/jvm/hotspot/oops/CellTypeState;
astore 5
start local 5 4: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 9
5: aload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeState.canBeReference:()Z
ifne 6
aload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeState.canBeValue:()Z
ifne 6
iconst_0
goto 7
StackMap locals: sun.jvm.hotspot.oops.CellTypeState sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
6: iconst_1
7: StackMap locals:
StackMap stack: int
ldc "can only load refs. and values."
8: invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isReference:()Z
ifeq 26
10: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 14
11: iload 2
iflt 12
iconst_1
goto 13
StackMap locals:
StackMap stack:
12: iconst_0
StackMap locals:
StackMap stack: int
13: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
14: StackMap locals:
StackMap stack:
aload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isReference:()Z
ifne 24
15: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._conflict:Z
16: aload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeState.canBeUninit:()Z
ifeq 20
17: aload 0
iload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.addToRefInitSet:(I)V
18: aload 4
astore 5
19: goto 22
20: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.recordRefvalConflict:(I)V
21: aload 4
astore 5
22: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
23: goto 27
24: StackMap locals:
StackMap stack:
aload 0
aload 5
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
25: goto 27
26: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
27: StackMap locals:
StackMap stack:
iinc 2 1
end local 5 end local 4 28: iinc 3 1
StackMap locals:
StackMap stack:
29: iload 3
aload 1
arraylength
if_icmpge 30
aload 1
iload 3
aaload
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 2
end local 3 30: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 31 1 out [Lsun/jvm/hotspot/oops/CellTypeState;
0 31 2 loc_no I
1 30 3 i I
3 28 4 out1 Lsun/jvm/hotspot/oops/CellTypeState;
4 28 5 vcts Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
out
loc_no
void ppush1(sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 2
1: aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isReference:()Z
aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isValue:()Z
ior
ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 4 1 in Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
in
void ppush(sun.jvm.hotspot.oops.CellTypeState[]);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: iinc 2 1
StackMap locals:
StackMap stack:
4: iload 2
aload 1
arraylength
if_icmpge 5
aload 1
iload 2
aaload
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 2
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 in [Lsun/jvm/hotspot/oops/CellTypeState;
1 5 2 i I
MethodParameters:
Name Flags
in
void ppush(sun.jvm.hotspot.oops.CellTypeStateList);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeStateList;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: iinc 2 1
StackMap locals:
StackMap stack:
4: iload 2
aload 1
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.size:()I
if_icmpge 5
aload 1
iload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 2
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 in Lsun/jvm/hotspot/oops/CellTypeStateList;
1 5 2 i I
MethodParameters:
Name Flags
in
void ppop1(sun.jvm.hotspot.oops.CellTypeState);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 2
start local 2 1: aload 0
aload 1
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.checkType:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 3 1 out Lsun/jvm/hotspot/oops/CellTypeState;
1 3 2 actual Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
out
void ppop(sun.jvm.hotspot.oops.CellTypeState[]);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: iinc 2 1
StackMap locals:
StackMap stack:
4: iload 2
aload 1
arraylength
if_icmpge 5
aload 1
iload 2
aaload
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 2
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 out [Lsun/jvm/hotspot/oops/CellTypeState;
1 5 2 i I
MethodParameters:
Name Flags
out
void ppopAny(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iload 1
if_icmplt 3
1: aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
iload 1
isub
putfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
2: goto 4
3: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "stack underflow"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 5 1 poplen I
MethodParameters:
Name Flags
poplen
void pp(sun.jvm.hotspot.oops.CellTypeState[], sun.jvm.hotspot.oops.CellTypeState[]);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
1: aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush:([Lsun/jvm/hotspot/oops/CellTypeState;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 3 1 in [Lsun/jvm/hotspot/oops/CellTypeState;
0 3 2 out [Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
in
out
void ppNewRef(sun.jvm.hotspot.oops.CellTypeState[], int);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;I)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop:([Lsun/jvm/hotspot/oops/CellTypeState;)V
1: aload 0
iload 2
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 3 1 in [Lsun/jvm/hotspot/oops/CellTypeState;
0 3 2 bci I
MethodParameters:
Name Flags
in
bci
void ppdupswap(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_5
anewarray sun.jvm.hotspot.oops.CellTypeState
astore 3
start local 3 1: iload 1
iconst_5
if_icmpge 2
iconst_1
goto 3
StackMap locals: sun.jvm.hotspot.oops.CellTypeState[]
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "this must be less than length of actual vector"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: iconst_0
istore 4
start local 4 5: goto 7
StackMap locals: int
StackMap stack:
6: aload 3
iload 4
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
aastore
iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 1
if_icmplt 6
end local 4 8: iconst_0
istore 4
start local 4 9: goto 18
10: StackMap locals:
StackMap stack:
aload 2
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 11: iload 5
bipush 49
isub
istore 6
start local 6 12: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 16
13: iload 6
iflt 14
iload 6
iload 1
if_icmpge 14
iconst_1
goto 15
StackMap locals: int int
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: ldc "wrong arguments"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
16: StackMap locals:
StackMap stack:
aload 0
aload 3
iload 6
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
end local 6 end local 5 17: iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
aload 2
invokevirtual java.lang.String.length:()I
if_icmplt 10
end local 4 19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 20 1 poplen I
0 20 2 out Ljava/lang/String;
1 20 3 actual [Lsun/jvm/hotspot/oops/CellTypeState;
5 8 4 i I
9 19 4 i I
11 17 5 push_ch C
12 17 6 idx I
MethodParameters:
Name Flags
poplen
out
void doLdc(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
iload 1
invokestatic sun.jvm.hotspot.interpreter.BytecodeLoadConstant.at:(Lsun/jvm/hotspot/oops/Method;I)Lsun/jvm/hotspot/interpreter/BytecodeLoadConstant;
astore 2
start local 2 1: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getConstants:()Lsun/jvm/hotspot/oops/ConstantPool;
pop
2: aload 2
invokevirtual sun.jvm.hotspot.interpreter.BytecodeLoadConstant.resultType:()Lsun/jvm/hotspot/runtime/BasicType;
astore 3
start local 3 3: aload 3
getstatic sun.jvm.hotspot.runtime.BasicType.T_OBJECT:Lsun/jvm/hotspot/runtime/BasicType;
if_acmpne 4
iload 1
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
goto 5
StackMap locals: sun.jvm.hotspot.interpreter.BytecodeLoadConstant sun.jvm.hotspot.runtime.BasicType
StackMap stack:
4: getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
StackMap locals:
StackMap stack: sun.jvm.hotspot.oops.CellTypeState
5: astore 4
start local 4 6: aload 0
aload 4
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 8 1 bci I
1 8 2 ldc Lsun/jvm/hotspot/interpreter/BytecodeLoadConstant;
3 8 3 bt Lsun/jvm/hotspot/runtime/BasicType;
6 8 4 cts Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
bci
void doAstore(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 2
start local 2 1: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isAddress:()Z
ifne 5
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isReference:()Z
ifne 5
2: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "wrong type on stack (found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.toChar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc ", expected: {pr})"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
aload 0
iload 1
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.setVar:(ILsun/jvm/hotspot/oops/CellTypeState;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 7 1 idx I
1 7 2 r_or_p Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
idx
void doJsr(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeAddr:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 2 1 targBCI I
MethodParameters:
Name Flags
targBCI
void doField(boolean, boolean, int, int);
descriptor: (ZZII)V
flags: (0x0000)
Code:
stack=4, locals=15, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getConstants:()Lsun/jvm/hotspot/oops/ConstantPool;
astore 5
start local 5 1: aload 5
iload 3
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getNameAndTypeRefIndexAt:(I)I
istore 6
start local 6 2: aload 5
iload 6
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getSignatureRefIndexAt:(I)I
istore 7
start local 7 3: aload 5
iload 7
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getSymbolAt:(J)Lsun/jvm/hotspot/oops/Symbol;
astore 8
start local 8 4: aload 8
lconst_0
invokevirtual sun.jvm.hotspot.oops.Symbol.getByteAt:(J)B
i2c
istore 9
start local 9 5: iconst_4
anewarray sun.jvm.hotspot.oops.CellTypeState
astore 10
start local 10 6: aload 0
iload 9
iload 4
aload 10
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.sigcharToEffect:(CI[Lsun/jvm/hotspot/oops/CellTypeState;)[Lsun/jvm/hotspot/oops/CellTypeState;
astore 11
start local 11 7: iconst_4
anewarray sun.jvm.hotspot.oops.CellTypeState
astore 12
start local 12 8: iconst_0
istore 14
start local 14 9: iload 1
ifeq 12
10: aload 11
astore 13
start local 13 11: goto 14
end local 13 12: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap int int int int sun.jvm.hotspot.oops.ConstantPool int int sun.jvm.hotspot.oops.Symbol int sun.jvm.hotspot.oops.CellTypeState[] sun.jvm.hotspot.oops.CellTypeState[] sun.jvm.hotspot.oops.CellTypeState[] top int
StackMap stack:
getstatic sun.jvm.hotspot.oops.GenerateOopMap.epsilonCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
astore 13
start local 13 13: aload 0
aload 12
aload 11
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.copyCTS:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)I
istore 14
14: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap int int int int sun.jvm.hotspot.oops.ConstantPool int int sun.jvm.hotspot.oops.Symbol int sun.jvm.hotspot.oops.CellTypeState[] sun.jvm.hotspot.oops.CellTypeState[] sun.jvm.hotspot.oops.CellTypeState[] sun.jvm.hotspot.oops.CellTypeState[] int
StackMap stack:
iload 2
ifne 15
aload 12
iload 14
iinc 14 1
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
15: StackMap locals:
StackMap stack:
aload 12
iload 14
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
16: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 20
17: iload 14
iconst_3
if_icmpgt 18
iconst_1
goto 19
StackMap locals:
StackMap stack:
18: iconst_0
StackMap locals:
StackMap stack: int
19: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
20: StackMap locals:
StackMap stack:
aload 0
aload 12
aload 13
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pp:([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)V
21: return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 22 1 is_get Z
0 22 2 is_static Z
0 22 3 idx I
0 22 4 bci I
1 22 5 cp Lsun/jvm/hotspot/oops/ConstantPool;
2 22 6 nameAndTypeIdx I
3 22 7 signatureIdx I
4 22 8 signature Lsun/jvm/hotspot/oops/Symbol;
5 22 9 sigch C
6 22 10 temp [Lsun/jvm/hotspot/oops/CellTypeState;
7 22 11 eff [Lsun/jvm/hotspot/oops/CellTypeState;
8 22 12 in [Lsun/jvm/hotspot/oops/CellTypeState;
11 12 13 out [Lsun/jvm/hotspot/oops/CellTypeState;
13 22 13 out [Lsun/jvm/hotspot/oops/CellTypeState;
9 22 14 i I
MethodParameters:
Name Flags
is_get
is_static
idx
bci
void doMethod(boolean, boolean, int, int);
descriptor: (ZZII)V
flags: (0x0000)
Code:
stack=5, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getConstants:()Lsun/jvm/hotspot/oops/ConstantPool;
astore 5
start local 5 1: aload 5
iload 3
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getSignatureRefAt:(I)Lsun/jvm/hotspot/oops/Symbol;
astore 6
start local 6 2: new sun.jvm.hotspot.oops.CellTypeStateList
dup
iconst_4
invokespecial sun.jvm.hotspot.oops.CellTypeStateList.<init>:(I)V
astore 7
start local 7 3: new sun.jvm.hotspot.oops.CellTypeStateList
dup
sipush 257
invokespecial sun.jvm.hotspot.oops.CellTypeStateList.<init>:(I)V
astore 8
start local 8 4: new sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack
dup
aload 6
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack.<init>:(Lsun/jvm/hotspot/oops/Symbol;)V
astore 9
start local 9 5: aload 9
aload 7
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack.computeForReturntype:(Lsun/jvm/hotspot/oops/CellTypeStateList;)I
istore 10
start local 10 6: aload 7
iconst_0
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.CellTypeState.ref:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 8
aload 7
iconst_1
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifeq 8
7: aload 7
iconst_0
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
iload 4
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
8: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap int int int int sun.jvm.hotspot.oops.ConstantPool sun.jvm.hotspot.oops.Symbol sun.jvm.hotspot.oops.CellTypeStateList sun.jvm.hotspot.oops.CellTypeStateList sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack int
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 12
9: iload 10
iconst_4
if_icmpgt 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: ldc "max value should be vv"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
12: StackMap locals:
StackMap stack:
aload 9
iload 1
aload 8
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack.computeForParameters:(ZLsun/jvm/hotspot/oops/CellTypeStateList;)I
istore 11
start local 11 13: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 17
14: iload 11
sipush 256
if_icmpgt 15
iconst_1
goto 16
StackMap locals: int
StackMap stack:
15: iconst_0
StackMap locals:
StackMap stack: int
16: ldc "too many locals"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
17: StackMap locals:
StackMap stack:
iload 11
iconst_1
isub
istore 12
start local 12 18: goto 20
StackMap locals: int
StackMap stack:
19: aload 0
aload 8
iload 12
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
iinc 12 -1
StackMap locals:
StackMap stack:
20: iload 12
ifge 19
end local 12 21: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._report_result_for_send:Z
ifeq 24
22: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._itr_send:Lsun/jvm/hotspot/interpreter/BytecodeStream;
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.stack:()Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._stack_top:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapForOpcodes:(Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
23: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result_for_send:Z
24: StackMap locals:
StackMap stack:
aload 0
aload 7
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush:(Lsun/jvm/hotspot/oops/CellTypeStateList;)V
25: return
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 26 1 is_static Z
0 26 2 is_interface Z
0 26 3 idx I
0 26 4 bci I
1 26 5 cp Lsun/jvm/hotspot/oops/ConstantPool;
2 26 6 signature Lsun/jvm/hotspot/oops/Symbol;
3 26 7 out Lsun/jvm/hotspot/oops/CellTypeStateList;
4 26 8 in Lsun/jvm/hotspot/oops/CellTypeStateList;
5 26 9 cse Lsun/jvm/hotspot/oops/GenerateOopMap$ComputeCallStack;
6 26 10 res_length I
13 26 11 arg_length I
18 21 12 i I
MethodParameters:
Name Flags
is_static
is_interface
idx
bci
void doMultianewarray(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: iload 1
iconst_1
if_icmplt 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
iload 1
iconst_1
isub
istore 3
start local 3 5: goto 8
6: StackMap locals: int
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.valCTS:Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppop1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
7: iinc 3 -1
StackMap locals:
StackMap stack:
8: iload 3
ifge 6
end local 3 9: aload 0
iload 2
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.ppush1:(Lsun/jvm/hotspot/oops/CellTypeState;)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 11 1 dims I
0 11 2 bci I
5 9 3 i I
MethodParameters:
Name Flags
dims
bci
void doMonitorenter(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 2
start local 2 1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpne 3
2: return
3: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isLockReference:()Z
ifeq 8
4: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
5: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
6: aload 0
ldc "nested redundant lock -- bailout..."
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
7: return
8: StackMap locals:
StackMap stack:
iload 1
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLockRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
astore 3
start local 3 9: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.checkType:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
10: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isInfoTop:()Z
ifne 13
11: aload 0
aload 2
aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.replaceAllCTSMatches:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
12: aload 0
aload 3
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitorPush:(Lsun/jvm/hotspot/oops/CellTypeState;)V
13: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 14 1 bci I
1 14 2 actual Lsun/jvm/hotspot/oops/CellTypeState;
9 14 3 lock Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
bci
void doMonitorexit(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 2
start local 2 1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
iconst_m1
if_icmpne 3
2: return
3: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.checkType:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
4: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.monitorPop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 3
start local 3 5: aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isLockReference:()Z
ifeq 6
aload 3
aload 2
invokevirtual sun.jvm.hotspot.oops.CellTypeState.equal:(Lsun/jvm/hotspot/oops/CellTypeState;)Z
ifne 13
6: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
7: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
8: aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockContaining:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 4
start local 4 9: aload 4
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
10: aload 4
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock._monitor_top:I
11: aload 0
ldc "improper monitor pair"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
end local 4 12: goto 14
13: StackMap locals:
StackMap stack:
aload 0
aload 2
iload 1
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.replaceAllCTSMatches:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._report_for_exit_bci:I
iload 1
if_icmpne 16
15: aload 0
aload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeState.getMonitorSource:()I
putfield sun.jvm.hotspot.oops.GenerateOopMap._matching_enter_bci:I
16: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 17 1 bci I
1 17 2 actual Lsun/jvm/hotspot/oops/CellTypeState;
5 17 3 expected Lsun/jvm/hotspot/oops/CellTypeState;
9 12 4 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bci
void doReturnMonitorCheck();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_top:I
ifle 3
1: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
2: aload 0
ldc "non-empty monitor stack at return"
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportMonitorMismatch:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
void doCheckcast();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.pop:()Lsun/jvm/hotspot/oops/CellTypeState;
astore 1
start local 1 1: aload 0
getstatic sun.jvm.hotspot.oops.GenerateOopMap.refCTS:Lsun/jvm/hotspot/oops/CellTypeState;
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.checkType:(Lsun/jvm/hotspot/oops/CellTypeState;Lsun/jvm/hotspot/oops/CellTypeState;)V
2: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.push:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
1 4 1 actual Lsun/jvm/hotspot/oops/CellTypeState;
sun.jvm.hotspot.oops.CellTypeState[] sigcharToEffect(char, int, sun.jvm.hotspot.oops.CellTypeState[]);
descriptor: (CI[Lsun/jvm/hotspot/oops/CellTypeState;)[Lsun/jvm/hotspot/oops/CellTypeState;
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
bipush 76
if_icmpeq 1
iload 1
bipush 91
if_icmpne 4
1: StackMap locals:
StackMap stack:
aload 3
iconst_0
iload 2
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeLineRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
aastore
2: aload 3
iconst_1
getstatic sun.jvm.hotspot.oops.CellTypeState.bottom:Lsun/jvm/hotspot/oops/CellTypeState;
aastore
3: aload 3
areturn
4: StackMap locals:
StackMap stack:
iload 1
bipush 74
if_icmpeq 5
iload 1
bipush 68
if_icmpne 6
StackMap locals:
StackMap stack:
5: getstatic sun.jvm.hotspot.oops.GenerateOopMap.vvCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
areturn
6: StackMap locals:
StackMap stack:
iload 1
bipush 86
if_icmpne 7
getstatic sun.jvm.hotspot.oops.GenerateOopMap.epsilonCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
areturn
7: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.oops.GenerateOopMap.vCTS:[Lsun/jvm/hotspot/oops/CellTypeState;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 8 1 sigch C
0 8 2 bci I
0 8 3 out [Lsun/jvm/hotspot/oops/CellTypeState;
MethodParameters:
Name Flags
sigch
bci
out
int copyCTS(sun.jvm.hotspot.oops.CellTypeState[], sun.jvm.hotspot.oops.CellTypeState[]);
descriptor: ([Lsun/jvm/hotspot/oops/CellTypeState;[Lsun/jvm/hotspot/oops/CellTypeState;)I
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
aload 2
iload 3
aaload
aastore
3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
aload 2
arraylength
if_icmpge 5
aload 2
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isBottom:()Z
ifeq 2
5: StackMap locals:
StackMap stack:
iload 3
ireturn
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;
0 6 1 dst [Lsun/jvm/hotspot/oops/CellTypeState;
0 6 2 src [Lsun/jvm/hotspot/oops/CellTypeState;
1 6 3 idx I
MethodParameters:
Name Flags
dst
src
void reportResult();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result:Z
1: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._gc_points:I
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapProlog:(I)V
2: iconst_0
istore 1
start local 1 3: goto 8
4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 1
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isReachable:()Z
ifeq 7
5: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 1
aaload
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
6: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 1
aaload
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interpBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
7: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
8: iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._bb_count:I
if_icmplt 4
end local 1 9: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapEpilog:()V
10: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillInitVars:(Ljava/util/List;)V
11: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result:Z
12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
3 9 1 i I
void initializeVars();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state:Lsun/jvm/hotspot/oops/CellTypeStateList;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
iload 1
invokestatic sun.jvm.hotspot.oops.CellTypeState.makeSlotRef:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.set:(Lsun/jvm/hotspot/oops/CellTypeState;)V
3: iinc 1 1
StackMap locals:
StackMap stack:
4: iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 2
end local 1 5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
1 5 1 k I
void addToRefInitSet(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 2
start local 2 1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
aload 2
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 3
2: return
3: StackMap locals: java.lang.Integer
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 5 1 localNo I
1 5 2 local Ljava/lang/Integer;
MethodParameters:
Name Flags
localNo
void recordRefvalConflict(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
1: iload 1
iflt 2
iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
if_icmpge 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "index out of range"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals:
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "### Conflict detected (local no: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
5: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
ifnonnull 11
6: aload 0
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
newarray 10
putfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
7: iconst_0
istore 2
start local 2 8: goto 10
StackMap locals: int
StackMap stack:
9: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
iload 2
iload 2
iastore
iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
if_icmplt 9
end local 2 11: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
iload 1
iaload
iload 1
if_icmpne 16
12: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
iadd
ldc 65536
if_icmplt 14
13: new java.lang.RuntimeException
dup
ldc "Rewriting exceeded local variable limit"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
iload 1
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
iadd
iastore
15: aload 0
dup
getfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
iconst_1
iadd
putfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 17 1 varNo I
8 11 2 k I
MethodParameters:
Name Flags
varNo
void rewriteRefvalConflicts();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
ifle 4
1: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.isDebugging:()Z
ifeq 3
2: new java.lang.RuntimeException
dup
ldc "Should not reach here (method rewriting should have been done by the VM already)"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "Method rewriting not yet implemented in Java"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
java.lang.String stateVecToString(sun.jvm.hotspot.oops.CellTypeStateList, int);
descriptor: (Lsun/jvm/hotspot/oops/CellTypeStateList;I)Ljava/lang/String;
flags: (0x0000)
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_vec_buf:[C
iload 3
aload 1
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
invokevirtual sun.jvm.hotspot.oops.CellTypeState.toChar:()C
castore
3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 2
if_icmplt 2
end local 3 5: new java.lang.String
dup
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._state_vec_buf:[C
iconst_0
iload 2
invokespecial java.lang.String.<init>:([CII)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 vec Lsun/jvm/hotspot/oops/CellTypeStateList;
0 6 2 len I
1 5 3 i I
MethodParameters:
Name Flags
vec
len
void retJumpTargetsDo(sun.jvm.hotspot.interpreter.BytecodeStream, sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure, int, int[]);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;I[I)V
flags: (0x0000)
Code:
stack=4, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.vars:()Lsun/jvm/hotspot/oops/CellTypeStateList;
iload 3
invokevirtual sun.jvm.hotspot.oops.CellTypeStateList.get:(I)Lsun/jvm/hotspot/oops/CellTypeState;
astore 5
start local 5 1: aload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeState.isGoodAddress:()Z
ifne 3
2: new java.lang.RuntimeException
dup
ldc "ret returns from two jsr subroutines?"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: sun.jvm.hotspot.oops.CellTypeState
StackMap stack:
aload 5
invokevirtual sun.jvm.hotspot.oops.CellTypeState.getInfo:()I
istore 6
start local 6 4: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._rt:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
iload 6
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTable.findJsrsForTarget:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
astore 7
start local 7 5: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
pop
6: iconst_0
istore 8
start local 8 7: goto 19
8: StackMap locals: int sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry int
StackMap stack:
aload 7
iload 8
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.jsrs:(I)I
istore 9
start local 9 9: aload 0
iload 9
iconst_1
isub
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockContaining:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 10
start local 10 10: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 15
11: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iconst_1
aload 0
aload 10
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.bbIndex:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
iadd
aaload
astore 11
start local 11 12: aload 11
aload 0
iload 9
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockAt:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
if_acmpne 13
iconst_1
goto 14
StackMap locals: int sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: ldc "wrong calc. of successor basicblock"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
end local 11 15: StackMap locals:
StackMap stack:
aload 10
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isAlive:()Z
istore 11
start local 11 16: iload 11
ifeq 18
17: aload 2
aload 0
iload 9
aload 4
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
end local 11 end local 10 end local 9 18: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
19: iload 8
aload 7
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry.nofJsrs:()I
if_icmplt 8
end local 8 20: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 21 1 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
0 21 2 closure Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;
0 21 3 varNo I
0 21 4 data [I
1 21 5 ra Lsun/jvm/hotspot/oops/CellTypeState;
4 21 6 target I
5 21 7 rtEnt Lsun/jvm/hotspot/oops/GenerateOopMap$RetTableEntry;
7 20 8 i I
9 18 9 target_bci I
10 18 10 jsr_bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
12 15 11 target_bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
16 18 11 alive Z
MethodParameters:
Name Flags
bcs
closure
varNo
data
boolean jumpTargetsDo(sun.jvm.hotspot.interpreter.BytecodeStream, sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure, int[]);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;[I)Z
flags: (0x0000)
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.bci:()I
istore 4
start local 4 1: aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.code:()I
tableswitch { // 153 - 229
153: 2
154: 2
155: 2
156: 2
157: 2
158: 2
159: 2
160: 2
161: 2
162: 2
163: 2
164: 2
165: 2
166: 2
167: 5
168: 24
169: 32
170: 9
171: 16
172: 32
173: 32
174: 32
175: 32
176: 32
177: 32
178: 33
179: 33
180: 33
181: 33
182: 33
183: 33
184: 33
185: 33
186: 33
187: 33
188: 33
189: 33
190: 33
191: 32
192: 33
193: 33
194: 33
195: 33
196: 31
197: 33
198: 2
199: 2
200: 7
201: 29
202: 33
203: 33
204: 33
205: 33
206: 33
207: 33
208: 33
209: 33
210: 33
211: 33
212: 33
213: 33
214: 33
215: 33
216: 33
217: 33
218: 33
219: 33
220: 33
221: 33
222: 33
223: 33
224: 33
225: 33
226: 33
227: 33
228: 16
229: 16
default: 33
}
2: StackMap locals: int
StackMap stack:
aload 2
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest:()I
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
3: aload 2
aload 0
iload 4
iconst_3
iadd
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
4: goto 34
5: StackMap locals:
StackMap stack:
aload 2
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest:()I
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
6: goto 34
7: StackMap locals:
StackMap stack:
aload 2
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest_w:()I
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
8: goto 34
9: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.jvm.hotspot.interpreter.BytecodeTableswitch.at:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)Lsun/jvm/hotspot/interpreter/BytecodeTableswitch;
astore 5
start local 5 10: aload 5
invokevirtual sun.jvm.hotspot.interpreter.BytecodeTableswitch.length:()I
istore 6
start local 6 11: aload 2
aload 0
iload 4
aload 5
invokevirtual sun.jvm.hotspot.interpreter.BytecodeTableswitch.defaultOffset:()I
iadd
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
12: goto 14
13: StackMap locals: sun.jvm.hotspot.interpreter.BytecodeTableswitch int
StackMap stack:
aload 2
aload 0
iload 4
aload 5
iload 6
invokevirtual sun.jvm.hotspot.interpreter.BytecodeTableswitch.destOffsetAt:(I)I
iadd
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
14: StackMap locals:
StackMap stack:
iinc 6 -1
iload 6
ifge 13
15: goto 34
end local 6 end local 5 16: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.jvm.hotspot.interpreter.BytecodeLookupswitch.at:(Lsun/jvm/hotspot/interpreter/BytecodeStream;)Lsun/jvm/hotspot/interpreter/BytecodeLookupswitch;
astore 5
start local 5 17: aload 5
invokevirtual sun.jvm.hotspot.interpreter.BytecodeLookupswitch.numberOfPairs:()I
istore 6
start local 6 18: aload 2
aload 0
iload 4
aload 5
invokevirtual sun.jvm.hotspot.interpreter.BytecodeLookupswitch.defaultOffset:()I
iadd
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
19: goto 22
20: StackMap locals: sun.jvm.hotspot.interpreter.BytecodeLookupswitch int
StackMap stack:
aload 5
iload 6
invokevirtual sun.jvm.hotspot.interpreter.BytecodeLookupswitch.pairAt:(I)Lsun/jvm/hotspot/interpreter/LookupswitchPair;
astore 7
start local 7 21: aload 2
aload 0
iload 4
aload 7
invokevirtual sun.jvm.hotspot.interpreter.LookupswitchPair.offset:()I
iadd
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
end local 7 22: StackMap locals:
StackMap stack:
iinc 6 -1
iload 6
ifge 20
23: goto 34
end local 6 end local 5 24: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.isWide:()Z
ifeq 25
iconst_0
goto 26
StackMap locals:
StackMap stack:
25: iconst_1
StackMap locals:
StackMap stack: int
26: ldc "sanity check"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
27: aload 2
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest:()I
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
28: goto 34
29: StackMap locals:
StackMap stack:
aload 2
aload 0
aload 1
invokevirtual sun.jvm.hotspot.interpreter.BytecodeStream.dest_w:()I
aload 3
invokeinterface sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure.process:(Lsun/jvm/hotspot/oops/GenerateOopMap;I[I)V
30: goto 34
31: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "Should not reach here"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
32: StackMap locals:
StackMap stack:
goto 34
33: StackMap locals:
StackMap stack:
iconst_1
ireturn
34: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 35 1 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
0 35 2 closure Lsun/jvm/hotspot/oops/GenerateOopMap$JumpClosure;
0 35 3 data [I
1 35 4 bci I
10 16 5 tableswitch Lsun/jvm/hotspot/interpreter/BytecodeTableswitch;
11 16 6 len I
17 24 5 lookupswitch Lsun/jvm/hotspot/interpreter/BytecodeLookupswitch;
18 24 6 npairs I
21 22 7 pair Lsun/jvm/hotspot/interpreter/LookupswitchPair;
MethodParameters:
Name Flags
bcs
closure
data
public void <init>(sun.jvm.hotspot.oops.Method);
descriptor: (Lsun/jvm/hotspot/oops/Method;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
2: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
3: aload 0
aconst_null
putfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
4: aload 0
new sun.jvm.hotspot.oops.GenerateOopMap$RetTable
dup
invokespecial sun.jvm.hotspot.oops.GenerateOopMap$RetTable.<init>:()V
putfield sun.jvm.hotspot.oops.GenerateOopMap._rt:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 6 1 method Lsun/jvm/hotspot/oops/Method;
MethodParameters:
Name Flags
method
public void computeMap();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
1: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._conflict:Z
2: aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMaxLocals:()J
l2i
putfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
3: aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMaxStack:()J
l2i
putfield sun.jvm.hotspot.oops.GenerateOopMap._max_stack:I
4: aload 0
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.hasExceptionTable:()Z
putfield sun.jvm.hotspot.oops.GenerateOopMap._has_exceptions:Z
5: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._nof_refval_conflicts:I
6: aload 0
new java.util.ArrayList
dup
iconst_5
invokespecial java.util.ArrayList.<init>:(I)V
putfield sun.jvm.hotspot.oops.GenerateOopMap._init_vars:Ljava/util/List;
7: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result:Z
8: aload 0
iconst_0
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result_for_send:Z
9: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_for_exit_bci:I
10: aload 0
aconst_null
putfield sun.jvm.hotspot.oops.GenerateOopMap._new_var_map:[I
11: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getCodeSize:()J
lconst_0
lcmp
ifeq 12
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
i2l
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.method:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMaxStack:()J
ladd
lconst_0
lcmp
ifne 15
12: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapProlog:(I)V
13: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.fillStackmapEpilog:()V
14: return
15: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 17
16: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._rt:Lsun/jvm/hotspot/oops/GenerateOopMap$RetTable;
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$RetTable.computeRetTable:(Lsun/jvm/hotspot/oops/Method;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 19
18: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.markBBHeadersAndCountGCPoints:()V
19: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 21
20: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.doInterpretation:()V
21: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifne 23
aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportResults:()Z
ifeq 23
22: aload 0
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.reportResult:()V
23: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._got_error:Z
ifeq 25
24: new java.lang.RuntimeException
dup
ldc "Illegal bytecode sequence encountered while generating interpreter pointer maps - method should be rejected by verifier."
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public void resultForBasicblock(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_result:Z
1: aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockContaining:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 2
start local 2 2: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 4
3: aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isReachable:()Z
ldc "getting result from unreachable basicblock"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
4: StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
aload 2
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
5: aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interpBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 7 1 bci I
2 7 2 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bci
public int maxLocals();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._max_locals:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public sun.jvm.hotspot.oops.Method method();
descriptor: ()Lsun/jvm/hotspot/oops/Method;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._method:Lsun/jvm/hotspot/oops/Method;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public boolean monitorSafe();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public int getMonitorMatch(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 2
1: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._monitor_safe:Z
ldc "Attempt to match monitor in broken code."
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_for_exit_bci:I
3: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._matching_enter_bci:I
4: aload 0
iload 1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.getBasicBlockContaining:(I)Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
astore 2
start local 2 5: aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.isReachable:()Z
ifeq 13
6: aload 2
iconst_1
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock.setChanged:(Z)V
7: aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.GenerateOopMap.interpBB:(Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)V
8: aload 0
iconst_m1
putfield sun.jvm.hotspot.oops.GenerateOopMap._report_for_exit_bci:I
9: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 13
10: aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._matching_enter_bci:I
iconst_m1
if_icmpeq 11
iconst_1
goto 12
StackMap locals: sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: ldc "monitor matching invariant"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
13: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._matching_enter_bci:I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 14 1 bci I
5 14 2 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
MethodParameters:
Name Flags
bci
private int bbIndex(sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock);
descriptor: (Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
iload 2
aaload
aload 1
if_acmpne 4
3: iload 2
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield sun.jvm.hotspot.oops.GenerateOopMap._basic_blocks:[Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
arraylength
if_icmplt 2
end local 2 6: new java.lang.RuntimeException
dup
ldc "Should have found block"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 7 1 bb Lsun/jvm/hotspot/oops/GenerateOopMap$BasicBlock;
1 6 2 i I
MethodParameters:
Name Flags
bb
public boolean allowRewrites();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public boolean reportResults();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public boolean reportInitVars();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public boolean possibleGCPoint(sun.jvm.hotspot.interpreter.BytecodeStream);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.RuntimeException
dup
ldc "ShouldNotReachHere"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 1 1 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
MethodParameters:
Name Flags
bcs
public void fillStackmapProlog(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.RuntimeException
dup
ldc "ShouldNotReachHere"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 1 1 nofGCPoints I
MethodParameters:
Name Flags
nofGCPoints
public void fillStackmapEpilog();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.RuntimeException
dup
ldc "ShouldNotReachHere"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
public void fillStackmapForOpcodes(sun.jvm.hotspot.interpreter.BytecodeStream, sun.jvm.hotspot.oops.CellTypeStateList, sun.jvm.hotspot.oops.CellTypeStateList, int);
descriptor: (Lsun/jvm/hotspot/interpreter/BytecodeStream;Lsun/jvm/hotspot/oops/CellTypeStateList;Lsun/jvm/hotspot/oops/CellTypeStateList;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.lang.RuntimeException
dup
ldc "ShouldNotReachHere"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 1 1 bcs Lsun/jvm/hotspot/interpreter/BytecodeStream;
0 1 2 vars Lsun/jvm/hotspot/oops/CellTypeStateList;
0 1 3 stack Lsun/jvm/hotspot/oops/CellTypeStateList;
0 1 4 stackTop I
MethodParameters:
Name Flags
bcs
vars
stack
stackTop
public void fillInitVars(java.util.List<java.lang.Integer>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.RuntimeException
dup
ldc "ShouldNotReachHere"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/oops/GenerateOopMap;
0 1 1 init_vars Ljava/util/List<Ljava/lang/Integer;>;
Signature: (Ljava/util/List<Ljava/lang/Integer;>;)V
MethodParameters:
Name Flags
init_vars
}
SourceFile: "GenerateOopMap.java"
NestMembers:
sun.jvm.hotspot.oops.GenerateOopMap$1 sun.jvm.hotspot.oops.GenerateOopMap$2 sun.jvm.hotspot.oops.GenerateOopMap$3 sun.jvm.hotspot.oops.GenerateOopMap$4 sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack sun.jvm.hotspot.oops.GenerateOopMap$ComputeEntryStack sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure sun.jvm.hotspot.oops.GenerateOopMap$RetTable sun.jvm.hotspot.oops.GenerateOopMap$RetTableEntry
InnerClasses:
sun.jvm.hotspot.oops.GenerateOopMap$1
sun.jvm.hotspot.oops.GenerateOopMap$2
sun.jvm.hotspot.oops.GenerateOopMap$3
sun.jvm.hotspot.oops.GenerateOopMap$4
BasicBlock = sun.jvm.hotspot.oops.GenerateOopMap$BasicBlock of sun.jvm.hotspot.oops.GenerateOopMap
ComputeCallStack = sun.jvm.hotspot.oops.GenerateOopMap$ComputeCallStack of sun.jvm.hotspot.oops.GenerateOopMap
ComputeEntryStack = sun.jvm.hotspot.oops.GenerateOopMap$ComputeEntryStack of sun.jvm.hotspot.oops.GenerateOopMap
abstract JumpClosure = sun.jvm.hotspot.oops.GenerateOopMap$JumpClosure of sun.jvm.hotspot.oops.GenerateOopMap
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