public class com.sun.tools.javac.jvm.Code
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.jvm.Code
super_class: java.lang.Object
{
public final boolean debugCode;
descriptor: Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final boolean needStackMap;
descriptor: Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
final com.sun.tools.javac.code.Types types;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x0010) ACC_FINAL
final com.sun.tools.javac.code.Symtab syms;
descriptor: Lcom/sun/tools/javac/code/Symtab;
flags: (0x0010) ACC_FINAL
public int max_stack;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int max_locals;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public byte[] code;
descriptor: [B
flags: (0x0001) ACC_PUBLIC
public int cp;
descriptor: I
flags: (0x0001) ACC_PUBLIC
com.sun.tools.javac.util.ListBuffer<char[]> catchInfo;
descriptor: Lcom/sun/tools/javac/util/ListBuffer;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/ListBuffer<[C>;
com.sun.tools.javac.util.List<char[]> lineInfo;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/List<[C>;
public com.sun.tools.javac.jvm.CRTable crt;
descriptor: Lcom/sun/tools/javac/jvm/CRTable;
flags: (0x0001) ACC_PUBLIC
public boolean fatcode;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
private boolean alive;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
com.sun.tools.javac.jvm.Code$State state;
descriptor: Lcom/sun/tools/javac/jvm/Code$State;
flags: (0x0000)
private boolean fixedPc;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public int nextreg;
descriptor: I
flags: (0x0001) ACC_PUBLIC
com.sun.tools.javac.jvm.Code$Chain pendingJumps;
descriptor: Lcom/sun/tools/javac/jvm/Code$Chain;
flags: (0x0000)
int pendingStatPos;
descriptor: I
flags: (0x0000)
boolean pendingStackMap;
descriptor: Z
flags: (0x0000)
com.sun.tools.javac.jvm.Code$StackMapFormat stackMap;
descriptor: Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
flags: (0x0000)
boolean varDebugInfo;
descriptor: Z
flags: (0x0000)
boolean lineDebugInfo;
descriptor: Z
flags: (0x0000)
com.sun.tools.javac.util.Position$LineMap lineMap;
descriptor: Lcom/sun/tools/javac/util/Position$LineMap;
flags: (0x0000)
final com.sun.tools.javac.jvm.Pool pool;
descriptor: Lcom/sun/tools/javac/jvm/Pool;
flags: (0x0010) ACC_FINAL
final com.sun.tools.javac.code.Symbol$MethodSymbol meth;
descriptor: Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
flags: (0x0010) ACC_FINAL
com.sun.tools.javac.jvm.Code$StackMapFrame[] stackMapBuffer;
descriptor: [Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
flags: (0x0000)
com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame[] stackMapTableBuffer;
descriptor: [Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
flags: (0x0000)
int stackMapBufferSize;
descriptor: I
flags: (0x0000)
int lastStackMapPC;
descriptor: I
flags: (0x0000)
com.sun.tools.javac.jvm.Code$StackMapFrame lastFrame;
descriptor: Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
flags: (0x0000)
com.sun.tools.javac.jvm.Code$StackMapFrame frameBeforeLast;
descriptor: Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
flags: (0x0000)
static final com.sun.tools.javac.code.Type jsrReturnValue;
descriptor: Lcom/sun/tools/javac/code/Type;
flags: (0x0018) ACC_STATIC, ACC_FINAL
com.sun.tools.javac.jvm.Code$LocalVar[] lvar;
descriptor: [Lcom/sun/tools/javac/jvm/Code$LocalVar;
flags: (0x0000)
com.sun.tools.javac.jvm.Code$LocalVar[] varBuffer;
descriptor: [Lcom/sun/tools/javac/jvm/Code$LocalVar;
flags: (0x0000)
int varBufferSize;
descriptor: I
flags: (0x0000)
private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$code$TypeTag;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new com.sun.tools.javac.code.Type$JCPrimitiveType
dup
getstatic com.sun.tools.javac.code.TypeTag.INT:Lcom/sun/tools/javac/code/TypeTag;
aconst_null
invokespecial com.sun.tools.javac.code.Type$JCPrimitiveType.<init>:(Lcom/sun/tools/javac/code/TypeTag;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
putstatic com.sun.tools.javac.jvm.Code.jsrReturnValue:Lcom/sun/tools/javac/code/Type;
return
LocalVariableTable:
Start End Slot Name Signature
public boolean checkLimits(com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, com.sun.tools.javac.util.Log);
descriptor: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/Log;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
ldc 65535
if_icmple 3
1: aload 2
aload 1
ldc "limit.code"
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Ljava/lang/String;[Ljava/lang/Object;)V
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.max_locals:I
ldc 65535
if_icmple 6
4: aload 2
aload 1
ldc "limit.locals"
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Ljava/lang/String;[Ljava/lang/Object;)V
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.max_stack:I
ldc 65535
if_icmple 9
7: aload 2
aload 1
ldc "limit.stack"
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Ljava/lang/String;[Ljava/lang/Object;)V
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/Code;
0 10 1 pos Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
0 10 2 log Lcom/sun/tools/javac/util/Log;
MethodParameters:
Name Flags
pos
log
public void <init>(com.sun.tools.javac.code.Symbol$MethodSymbol, boolean, com.sun.tools.javac.util.Position$LineMap, boolean, com.sun.tools.javac.jvm.Code$StackMapFormat, boolean, com.sun.tools.javac.jvm.CRTable, com.sun.tools.javac.code.Symtab, com.sun.tools.javac.code.Types, com.sun.tools.javac.jvm.Pool);
descriptor: (Lcom/sun/tools/javac/code/Symbol$MethodSymbol;ZLcom/sun/tools/javac/util/Position$LineMap;ZLcom/sun/tools/javac/jvm/Code$StackMapFormat;ZLcom/sun/tools/javac/jvm/CRTable;Lcom/sun/tools/javac/code/Symtab;Lcom/sun/tools/javac/code/Types;Lcom/sun/tools/javac/jvm/Pool;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=11
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.max_stack:I
2: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.max_locals:I
3: aload 0
bipush 64
newarray 8
putfield com.sun.tools.javac.jvm.Code.code:[B
4: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.cp:I
5: aload 0
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
putfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
6: aload 0
invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
7: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
8: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.fixedPc:Z
9: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.nextreg:I
10: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
11: aload 0
iconst_m1
putfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
12: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
13: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
14: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
15: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
16: aload 0
iconst_m1
putfield com.sun.tools.javac.jvm.Code.lastStackMapPC:I
17: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
18: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.frameBeforeLast:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
19: aload 0
aload 1
putfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
20: aload 0
iload 2
putfield com.sun.tools.javac.jvm.Code.fatcode:Z
21: aload 0
aload 3
putfield com.sun.tools.javac.jvm.Code.lineMap:Lcom/sun/tools/javac/util/Position$LineMap;
22: aload 0
aload 3
ifnull 23
iconst_1
goto 24
StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.code.Symbol$MethodSymbol int com.sun.tools.javac.util.Position$LineMap int com.sun.tools.javac.jvm.Code$StackMapFormat int com.sun.tools.javac.jvm.CRTable com.sun.tools.javac.code.Symtab com.sun.tools.javac.code.Types com.sun.tools.javac.jvm.Pool
StackMap stack: com.sun.tools.javac.jvm.Code
23: iconst_0
StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.code.Symbol$MethodSymbol int com.sun.tools.javac.util.Position$LineMap int com.sun.tools.javac.jvm.Code$StackMapFormat int com.sun.tools.javac.jvm.CRTable com.sun.tools.javac.code.Symtab com.sun.tools.javac.code.Types com.sun.tools.javac.jvm.Pool
StackMap stack: com.sun.tools.javac.jvm.Code int
24: putfield com.sun.tools.javac.jvm.Code.lineDebugInfo:Z
25: aload 0
iload 4
putfield com.sun.tools.javac.jvm.Code.varDebugInfo:Z
26: aload 0
aload 7
putfield com.sun.tools.javac.jvm.Code.crt:Lcom/sun/tools/javac/jvm/CRTable;
27: aload 0
aload 8
putfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
28: aload 0
aload 9
putfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
29: aload 0
iload 6
putfield com.sun.tools.javac.jvm.Code.debugCode:Z
30: aload 0
aload 5
putfield com.sun.tools.javac.jvm.Code.stackMap:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
31: invokestatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat:()[I
aload 5
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.ordinal:()I
iaload
tableswitch { // 2 - 3
2: 32
3: 32
default: 34
}
32: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.needStackMap:Z
33: goto 35
34: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.needStackMap:Z
35: StackMap locals:
StackMap stack:
aload 0
new com.sun.tools.javac.jvm.Code$State
dup
aload 0
invokespecial com.sun.tools.javac.jvm.Code$State.<init>:(Lcom/sun/tools/javac/jvm/Code;)V
putfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
36: aload 0
bipush 20
anewarray com.sun.tools.javac.jvm.Code$LocalVar
putfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
37: aload 0
aload 10
putfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
38: return
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 39 0 this Lcom/sun/tools/javac/jvm/Code;
0 39 1 meth Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
0 39 2 fatcode Z
0 39 3 lineMap Lcom/sun/tools/javac/util/Position$LineMap;
0 39 4 varDebugInfo Z
0 39 5 stackMap Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
0 39 6 debugCode Z
0 39 7 crt Lcom/sun/tools/javac/jvm/CRTable;
0 39 8 syms Lcom/sun/tools/javac/code/Symtab;
0 39 9 types Lcom/sun/tools/javac/code/Types;
0 39 10 pool Lcom/sun/tools/javac/jvm/Pool;
MethodParameters:
Name Flags
meth
fatcode
lineMap
varDebugInfo
stackMap
debugCode
crt
syms
types
pool
public static int typecode(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: invokestatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$code$TypeTag:()[I
aload 0
invokevirtual com.sun.tools.javac.code.Type.getTag:()Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iaload
tableswitch { // 1 - 25
1: 1
2: 3
3: 2
4: 5
5: 6
6: 4
7: 7
8: 8
9: 9
10: 10
11: 10
12: 10
13: 11
14: 11
15: 10
16: 11
17: 11
18: 11
19: 10
20: 11
21: 11
22: 11
23: 11
24: 10
25: 10
default: 11
}
1: StackMap locals:
StackMap stack:
iconst_5
ireturn
2: StackMap locals:
StackMap stack:
bipush 7
ireturn
3: StackMap locals:
StackMap stack:
bipush 6
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iconst_2
ireturn
7: StackMap locals:
StackMap stack:
iconst_3
ireturn
8: StackMap locals:
StackMap stack:
iconst_5
ireturn
9: StackMap locals:
StackMap stack:
bipush 8
ireturn
10: StackMap locals:
StackMap stack:
iconst_4
ireturn
11: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "typecode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.javac.code.Type.getTag:()Lcom/sun/tools/javac/code/TypeTag;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 type Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
type
public static int truncate(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
tableswitch { // 5 - 7
5: 1
6: 1
7: 1
default: 2
}
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 tc I
MethodParameters:
Name Flags
tc
public static int width(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
lookupswitch { // 3
1: 1
3: 1
8: 2
default: 3
}
1: StackMap locals:
StackMap stack:
iconst_2
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 typecode I
MethodParameters:
Name Flags
typecode
public static int width(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: aload 0
invokestatic com.sun.tools.javac.jvm.Code.typecode:(Lcom/sun/tools/javac/code/Type;)I
invokestatic com.sun.tools.javac.jvm.Code.width:(I)I
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
type
public static int width(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
astore 2
start local 2 2: goto 5
3: StackMap locals: int com.sun.tools.javac.util.List
StackMap stack:
iload 1
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 1
4: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
StackMap locals:
StackMap stack:
5: aload 2
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 3
end local 2 6: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 types Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
1 7 1 w I
2 6 2 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)I
MethodParameters:
Name Flags
types
public static int arraycode(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: invokestatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$code$TypeTag:()[I
aload 0
invokevirtual com.sun.tools.javac.code.Type.getTag:()Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iaload
tableswitch { // 1 - 11
1: 1
2: 4
3: 3
4: 6
5: 7
6: 5
7: 8
8: 2
9: 11
10: 9
11: 10
default: 11
}
1: StackMap locals:
StackMap stack:
bipush 8
ireturn
2: StackMap locals:
StackMap stack:
iconst_4
ireturn
3: StackMap locals:
StackMap stack:
bipush 9
ireturn
4: StackMap locals:
StackMap stack:
iconst_5
ireturn
5: StackMap locals:
StackMap stack:
bipush 10
ireturn
6: StackMap locals:
StackMap stack:
bipush 11
ireturn
7: StackMap locals:
StackMap stack:
bipush 6
ireturn
8: StackMap locals:
StackMap stack:
bipush 7
ireturn
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
10: StackMap locals:
StackMap stack:
iconst_1
ireturn
11: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "arraycode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 type Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
type
public int curCP();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
ifnull 2
1: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.resolvePending:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
iconst_m1
if_icmpeq 4
3: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markStatBegin:()V
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.fixedPc:Z
5: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/Code;
private void emit1(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 1
return
1: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
invokestatic com.sun.tools.javac.util.ArrayUtils.ensureCapacity:([BI)[B
putfield com.sun.tools.javac.jvm.Code.code:[B
2: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
i2b
bastore
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/Code;
0 4 1 od I
MethodParameters:
Name Flags
od
private void emit2(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 1
return
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_2
iadd
aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
arraylength
if_icmple 5
2: aload 0
iload 1
bipush 8
ishr
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
3: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
4: goto 7
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
bipush 8
ishr
i2b
bastore
6: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
i2b
bastore
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
0 8 1 od I
MethodParameters:
Name Flags
od
public void emit4(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 1
return
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_4
iadd
aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
arraylength
if_icmple 7
2: aload 0
iload 1
bipush 24
ishr
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
3: aload 0
iload 1
bipush 16
ishr
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
4: aload 0
iload 1
bipush 8
ishr
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
5: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
6: goto 11
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
bipush 24
ishr
i2b
bastore
8: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
bipush 16
ishr
i2b
bastore
9: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
bipush 8
ishr
i2b
bastore
10: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
i2b
bastore
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/jvm/Code;
0 12 1 od I
MethodParameters:
Name Flags
od
private void emitop(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
ifnull 1
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.resolvePending:()V
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 13
2: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
iconst_m1
if_icmpeq 4
3: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markStatBegin:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
ifeq 7
5: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
6: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.emitStackMap:()V
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.debugCode:Z
ifeq 12
8: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "emit@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " stack="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/javac/jvm/Code;
0 14 1 op I
MethodParameters:
Name Flags
op
void postop();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 1
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/Code;
public void emitLdc(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 255
if_icmpgt 3
1: aload 0
bipush 18
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop1:(II)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
bipush 19
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop2:(II)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/jvm/Code;
0 5 1 od I
MethodParameters:
Name Flags
od
public void emitMultianewarray(int, int, com.sun.tools.javac.code.Type);
descriptor: (IILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
sipush 197
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
3: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/jvm/Code;
0 7 1 ndims I
0 7 2 type I
0 7 3 arrayType Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
ndims
type
arrayType
public void emitNewarray(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
sipush 188
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
3: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/Code;
0 6 1 elemcode I
0 6 2 arrayType Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
elemcode
arrayType
public void emitAnewarray(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
sipush 189
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
3: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/Code;
0 6 1 od I
0 6 2 arrayType Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
od
arrayType
public void emitInvokeinterface(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/util/List;)I
istore 3
start local 3 1: aload 0
sipush 185
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 3
return
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
iload 3
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
5: aload 0
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
6: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 3
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
7: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/jvm/Code;
0 9 1 meth I
0 9 2 mtype Lcom/sun/tools/javac/code/Type;
1 9 3 argsize I
MethodParameters:
Name Flags
meth
mtype
public void emitInvokespecial(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/util/List;)I
istore 3
start local 3 1: aload 0
sipush 183
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 3
return
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 1
aaload
checkcast com.sun.tools.javac.code.Symbol
astore 4
start local 4 5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
6: aload 4
invokevirtual com.sun.tools.javac.code.Symbol.isConstructor:()Z
ifeq 8
7: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.peek:()Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.jvm.UninitializedType
invokevirtual com.sun.tools.javac.jvm.Code$State.markInitialized:(Lcom/sun/tools/javac/jvm/UninitializedType;)V
8: StackMap locals: com.sun.tools.javac.code.Symbol
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
9: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
10: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 meth I
0 11 2 mtype Lcom/sun/tools/javac/code/Type;
1 11 3 argsize I
5 11 4 sym Lcom/sun/tools/javac/code/Symbol;
MethodParameters:
Name Flags
meth
mtype
public void emitInvokestatic(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/util/List;)I
istore 3
start local 3 1: aload 0
sipush 184
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 3
return
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/jvm/Code;
0 7 1 meth I
0 7 2 mtype Lcom/sun/tools/javac/code/Type;
1 7 3 argsize I
MethodParameters:
Name Flags
meth
mtype
public void emitInvokevirtual(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/util/List;)I
istore 3
start local 3 1: aload 0
sipush 182
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 3
return
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 3
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/jvm/Code;
0 7 1 meth I
0 7 2 mtype Lcom/sun/tools/javac/code/Type;
1 7 3 argsize I
MethodParameters:
Name Flags
meth
mtype
public void emitInvokedynamic(int, com.sun.tools.javac.code.Type);
descriptor: (ILcom/sun/tools/javac/code/Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/util/List;)I
istore 3
start local 3 1: aload 0
sipush 186
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 3
return
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
6: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
0 8 1 desc I
0 8 2 mtype Lcom/sun/tools/javac/code/Type;
1 8 3 argsize I
MethodParameters:
Name Flags
desc
mtype
public void emitop0(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
iload 1
tableswitch { // 0 - 196
0: 13
1: 14
2: 16
3: 16
4: 16
5: 16
6: 16
7: 16
8: 16
9: 18
10: 18
11: 20
12: 20
13: 20
14: 22
15: 22
16: 229
17: 229
18: 229
19: 229
20: 229
21: 229
22: 229
23: 229
24: 229
25: 229
26: 16
27: 16
28: 16
29: 16
30: 18
31: 18
32: 18
33: 18
34: 20
35: 20
36: 20
37: 20
38: 22
39: 22
40: 22
41: 22
42: 24
43: 26
44: 28
45: 30
46: 32
47: 35
48: 38
49: 41
50: 3
51: 32
52: 32
53: 32
54: 229
55: 229
56: 229
57: 229
58: 229
59: 44
60: 44
61: 44
62: 44
63: 55
64: 55
65: 55
66: 55
67: 44
68: 44
69: 44
70: 44
71: 55
72: 55
73: 55
74: 55
75: 44
76: 44
77: 44
78: 44
79: 131
80: 133
81: 131
82: 133
83: 75
84: 126
85: 131
86: 131
87: 44
88: 55
89: 63
90: 120
91: 197
92: 135
93: 147
94: 163
95: 217
96: 73
97: 77
98: 129
99: 222
100: 73
101: 77
102: 129
103: 222
104: 73
105: 77
106: 129
107: 222
108: 73
109: 77
110: 129
111: 222
112: 73
113: 77
114: 129
115: 222
116: 13
117: 13
118: 13
119: 13
120: 73
121: 44
122: 73
123: 44
124: 73
125: 44
126: 73
127: 77
128: 73
129: 77
130: 73
131: 77
132: 229
133: 85
134: 88
135: 91
136: 82
137: 94
138: 97
139: 100
140: 103
141: 106
142: 109
143: 112
144: 115
145: 128
146: 128
147: 128
148: 79
149: 211
150: 211
151: 214
152: 214
153: 229
154: 229
155: 229
156: 229
157: 229
158: 229
159: 229
160: 229
161: 229
162: 229
163: 229
164: 229
165: 229
166: 229
167: 11
168: 229
169: 224
170: 118
171: 118
172: 46
173: 57
174: 46
175: 57
176: 46
177: 65
178: 229
179: 229
180: 229
181: 229
182: 229
183: 229
184: 229
185: 229
186: 229
187: 229
188: 229
189: 229
190: 70
191: 52
192: 229
193: 229
194: 227
195: 227
196: 226
default: 229
}
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
astore 2
start local 2 5: aload 2
getstatic com.sun.tools.javac.code.TypeTag.BOT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
8: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
9: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 2
invokevirtual com.sun.tools.javac.code.Types.elemtype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 2 10: goto 230
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
12: goto 230
13: StackMap locals:
StackMap stack:
goto 230
14: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.botType:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
15: goto 230
16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
17: goto 230
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
19: goto 230
20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
21: goto 230
22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
23: goto 230
24: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iconst_0
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
25: goto 230
26: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iconst_1
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
27: goto 230
28: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iconst_2
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
29: goto 230
30: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iconst_3
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
31: goto 230
32: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
33: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
34: goto 230
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
36: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
37: goto 230
38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
39: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
40: goto 230
41: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
42: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
43: goto 230
44: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
45: goto 230
46: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
ifne 47
iconst_1
goto 48
StackMap locals:
StackMap stack:
47: iconst_0
StackMap locals:
StackMap stack: int
48: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
49: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
50: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
51: goto 230
52: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
53: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
54: goto 230
55: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
56: goto 230
57: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
ifne 58
iconst_1
goto 59
StackMap locals:
StackMap stack:
58: iconst_0
StackMap locals:
StackMap stack: int
59: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
60: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
61: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
62: goto 230
63: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
64: goto 230
65: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
ifne 66
iconst_1
goto 67
StackMap locals:
StackMap stack:
66: iconst_0
StackMap locals:
StackMap stack: int
67: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
68: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
69: goto 230
70: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
71: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
72: goto 230
73: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
74: goto 230
75: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
76: goto 230
77: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
78: goto 230
79: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_4
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
80: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
81: goto 230
82: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
83: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
84: goto 230
85: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
86: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
87: goto 230
88: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
89: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
90: goto 230
91: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
92: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
93: goto 230
94: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
95: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
96: goto 230
97: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
98: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
99: goto 230
100: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
101: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
102: goto 230
103: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
104: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
105: goto 230
106: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
107: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
108: goto 230
109: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
110: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
111: goto 230
112: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
113: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
114: goto 230
115: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
116: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
117: goto 230
118: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
119: goto 230
120: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 121: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 122: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
123: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
124: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
125: goto 230
end local 3 end local 2 126: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
127: goto 230
128: StackMap locals:
StackMap stack:
goto 230
129: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
130: goto 230
131: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_3
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
132: goto 230
133: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_4
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
134: goto 230
135: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 143
136: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 137: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 138: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
139: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
140: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
141: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 3 end local 2 142: goto 230
143: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 144: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
145: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 2 146: goto 230
147: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 157
148: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 149: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 150: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 151: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
152: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
153: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
154: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
155: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 4 end local 3 end local 2 156: goto 230
157: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 158: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 159: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
160: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
161: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 3 end local 2 162: goto 230
163: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 183
164: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 165: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 166: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 176
167: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 168: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 5
start local 5 169: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
170: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
171: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 5
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
172: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
173: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
174: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 5 end local 4 175: goto 230
176: StackMap locals: com.sun.tools.javac.code.Type com.sun.tools.javac.code.Type
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 177: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
178: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
179: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
180: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
181: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 4 end local 3 end local 2 182: goto 230
183: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 184: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 192
185: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 186: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 187: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
188: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
189: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
190: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 4 end local 3 191: goto 230
192: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 193: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
194: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
195: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 3 end local 2 196: goto 230
197: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 198: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
iconst_1
isub
aaload
ifnull 206
199: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 200: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 201: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
202: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
203: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
204: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 4 end local 3 205: goto 230
206: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop2:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 207: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
208: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
209: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
end local 3 end local 2 210: goto 230
211: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
212: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
213: goto 230
214: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_4
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
215: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
216: goto 230
217: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 2
start local 2 218: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop1:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 219: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
220: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
221: goto 230
end local 3 end local 2 222: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
223: goto 230
224: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
225: goto 230
226: StackMap locals:
StackMap stack:
return
227: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
228: goto 230
229: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
230: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.postop:()V
231: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 232 0 this Lcom/sun/tools/javac/jvm/Code;
0 232 1 op I
5 10 2 a Lcom/sun/tools/javac/code/Type;
121 126 2 val1 Lcom/sun/tools/javac/code/Type;
122 126 3 val2 Lcom/sun/tools/javac/code/Type;
137 142 2 value1 Lcom/sun/tools/javac/code/Type;
138 142 3 value2 Lcom/sun/tools/javac/code/Type;
144 146 2 value Lcom/sun/tools/javac/code/Type;
149 156 2 value1 Lcom/sun/tools/javac/code/Type;
150 156 3 value2 Lcom/sun/tools/javac/code/Type;
151 156 4 value3 Lcom/sun/tools/javac/code/Type;
158 162 2 value1 Lcom/sun/tools/javac/code/Type;
159 162 3 value2 Lcom/sun/tools/javac/code/Type;
165 182 2 value1 Lcom/sun/tools/javac/code/Type;
166 182 3 value2 Lcom/sun/tools/javac/code/Type;
168 175 4 value3 Lcom/sun/tools/javac/code/Type;
169 175 5 value4 Lcom/sun/tools/javac/code/Type;
177 182 4 value3 Lcom/sun/tools/javac/code/Type;
184 196 2 value1 Lcom/sun/tools/javac/code/Type;
186 191 3 value2 Lcom/sun/tools/javac/code/Type;
187 191 4 value3 Lcom/sun/tools/javac/code/Type;
193 196 3 value2 Lcom/sun/tools/javac/code/Type;
198 210 2 value1 Lcom/sun/tools/javac/code/Type;
200 205 3 value2 Lcom/sun/tools/javac/code/Type;
201 205 4 value3 Lcom/sun/tools/javac/code/Type;
207 210 3 value2 Lcom/sun/tools/javac/code/Type;
218 222 2 value1 Lcom/sun/tools/javac/code/Type;
219 222 3 value2 Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
op
public void emitop1(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
3: iload 1
tableswitch { // 16 - 18
16: 4
17: 8
18: 6
default: 8
}
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
5: goto 9
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
invokevirtual com.sun.tools.javac.jvm.Code.typeForPool:(Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
7: goto 9
8: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.postop:()V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 op I
0 11 2 od I
MethodParameters:
Name Flags
op
od
private com.sun.tools.javac.code.Type typeForPool(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Integer
ifeq 1
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
areturn
1: StackMap locals:
StackMap stack:
aload 1
instanceof java.lang.Float
ifeq 2
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof java.lang.String
ifeq 3
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.stringType:Lcom/sun/tools/javac/code/Type;
areturn
3: StackMap locals:
StackMap stack:
aload 1
instanceof java.lang.Long
ifeq 4
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
areturn
4: StackMap locals:
StackMap stack:
aload 1
instanceof java.lang.Double
ifeq 5
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
areturn
5: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.tools.javac.code.Symbol$ClassSymbol
ifeq 6
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.classType:Lcom/sun/tools/javac/code/Type;
areturn
6: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.tools.javac.jvm.Pool$MethodHandle
ifeq 7
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.methodHandleType:Lcom/sun/tools/javac/code/Type;
areturn
7: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.tools.javac.code.Types$UniqueType
ifeq 8
aload 0
aload 1
checkcast com.sun.tools.javac.code.Types$UniqueType
getfield com.sun.tools.javac.code.Types$UniqueType.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code.typeForPool:(Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
areturn
8: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.tools.javac.code.Type
ifeq 12
9: aload 1
checkcast com.sun.tools.javac.code.Type
astore 2
start local 2 10: aload 2
instanceof com.sun.tools.javac.code.Type$ArrayType
ifeq 11
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.classType:Lcom/sun/tools/javac/code/Type;
areturn
11: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 2
instanceof com.sun.tools.javac.code.Type$MethodType
ifeq 12
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.methodTypeType:Lcom/sun/tools/javac/code/Type;
areturn
end local 2 12: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Invalid type of constant pool entry: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/jvm/Code;
0 13 1 o Ljava/lang/Object;
10 12 2 ty Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
o
public void emitop1w(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
sipush 255
if_icmple 5
1: aload 0
sipush 196
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
3: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: goto 7
5: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
6: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 8
return
8: StackMap locals:
StackMap stack:
iload 1
lookupswitch { // 11
21: 9
22: 11
23: 13
24: 15
25: 17
54: 21
55: 19
56: 21
57: 19
58: 21
169: 23
default: 25
}
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
10: goto 26
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.longType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
12: goto 26
13: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.floatType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
14: goto 26
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.doubleType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
16: goto 26
17: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
18: goto 26
19: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
20: goto 26
21: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
22: goto 26
23: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
24: goto 26
25: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
26: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.postop:()V
27: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/sun/tools/javac/jvm/Code;
0 28 1 op I
0 28 2 od I
MethodParameters:
Name Flags
op
od
public void emitop1w(int, int, int);
descriptor: (III)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
sipush 255
if_icmpgt 1
iload 3
bipush -128
if_icmplt 1
iload 3
bipush 127
if_icmple 6
1: StackMap locals:
StackMap stack:
aload 0
sipush 196
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
2: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
3: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
4: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
5: goto 9
6: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
7: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
8: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.emit1:(I)V
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 10
return
10: StackMap locals:
StackMap stack:
iload 1
tableswitch { // 132 - 132
132: 11
default: 12
}
11: StackMap locals:
StackMap stack:
goto 13
12: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
13: StackMap locals:
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 Lcom/sun/tools/javac/jvm/Code;
0 14 1 op I
0 14 2 od1 I
0 14 3 od2 I
MethodParameters:
Name Flags
op
od1
od2
public void emitop2(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit2:(I)V
3: iload 1
lookupswitch { // 28
17: 14
19: 41
20: 36
153: 16
154: 16
155: 16
156: 16
157: 16
158: 16
159: 18
160: 18
161: 18
162: 18
163: 18
164: 18
165: 18
166: 18
167: 20
168: 43
178: 4
179: 6
180: 25
181: 22
187: 8
192: 28
193: 38
198: 16
199: 16
default: 44
}
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Symbol
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
5: goto 45
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Symbol
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(Lcom/sun/tools/javac/code/Type;)V
7: goto 45
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
instanceof com.sun.tools.javac.code.Types$UniqueType
ifeq 11
9: aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Types$UniqueType
getfield com.sun.tools.javac.code.Types$UniqueType.type:Lcom/sun/tools/javac/code/Type;
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
astore 3
start local 3 10: goto 12
end local 3 11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Symbol
astore 3
start local 3 12: StackMap locals: com.sun.tools.javac.code.Symbol
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 3
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_3
isub
invokestatic com.sun.tools.javac.jvm.UninitializedType.uninitializedObject:(Lcom/sun/tools/javac/code/Type;I)Lcom/sun/tools/javac/jvm/UninitializedType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
13: goto 45
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
15: goto 45
16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
17: goto 45
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_2
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
19: goto 45
20: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
21: goto 45
22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Symbol
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(Lcom/sun/tools/javac/code/Type;)V
23: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
24: goto 45
25: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
26: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
checkcast com.sun.tools.javac.code.Symbol
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
27: goto 45
28: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
29: aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
astore 4
start local 4 30: aload 4
instanceof com.sun.tools.javac.code.Symbol
ifeq 32
31: aload 4
checkcast com.sun.tools.javac.code.Symbol
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
goto 33
32: StackMap locals: com.sun.tools.javac.jvm.Code int int top java.lang.Object
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 4
checkcast com.sun.tools.javac.code.Types$UniqueType
getfield com.sun.tools.javac.code.Types$UniqueType.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
33: StackMap locals:
StackMap stack: com.sun.tools.javac.code.Type
astore 5
start local 5 34: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 5
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
35: goto 45
end local 5 end local 4 36: StackMap locals: com.sun.tools.javac.jvm.Code int int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
invokevirtual com.sun.tools.javac.jvm.Code.typeForPool:(Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
37: goto 45
38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iconst_1
invokevirtual com.sun.tools.javac.jvm.Code$State.pop:(I)V
39: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
40: goto 45
41: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.pool:Lcom/sun/tools/javac/jvm/Pool;
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 2
aaload
invokevirtual com.sun.tools.javac.jvm.Code.typeForPool:(Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
42: goto 45
43: StackMap locals:
StackMap stack:
goto 45
44: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
45: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 46 0 this Lcom/sun/tools/javac/jvm/Code;
0 46 1 op I
0 46 2 od I
10 11 3 sym Lcom/sun/tools/javac/code/Symbol;
12 14 3 sym Lcom/sun/tools/javac/code/Symbol;
30 36 4 o Ljava/lang/Object;
34 36 5 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
op
od
public void emitop4(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitop:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 2
return
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.emit4:(I)V
3: iload 1
tableswitch { // 200 - 201
200: 4
201: 6
default: 7
}
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.markDead:()V
5: goto 8
6: StackMap locals:
StackMap stack:
goto 8
7: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
iload 1
invokestatic com.sun.tools.javac.jvm.Code.mnem:(I)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/jvm/Code;
0 9 1 op I
0 9 2 od I
MethodParameters:
Name Flags
op
od
public void align(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 4
1: goto 3
StackMap locals:
StackMap stack:
2: aload 0
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emitop0:(I)V
StackMap locals:
StackMap stack:
3: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iload 1
irem
ifne 2
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/jvm/Code;
0 5 1 incr I
MethodParameters:
Name Flags
incr
private void put1(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
iload 1
iload 2
i2b
bastore
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/Code;
0 2 1 pc I
0 2 2 op I
MethodParameters:
Name Flags
pc
op
private void put2(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 2
bipush 8
ishr
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
1: aload 0
iload 1
iconst_1
iadd
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/Code;
0 3 1 pc I
0 3 2 od I
MethodParameters:
Name Flags
pc
od
public void put4(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 2
bipush 24
ishr
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
1: aload 0
iload 1
iconst_1
iadd
iload 2
bipush 16
ishr
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
2: aload 0
iload 1
iconst_2
iadd
iload 2
bipush 8
ishr
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
3: aload 0
iload 1
iconst_3
iadd
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.put1:(II)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/jvm/Code;
0 5 1 pc I
0 5 2 od I
MethodParameters:
Name Flags
pc
od
private int get1(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.code:[B
iload 1
baload
sipush 255
iand
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/Code;
0 1 1 pc I
MethodParameters:
Name Flags
pc
private int get2(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
bipush 8
ishl
aload 0
iload 1
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
ior
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/Code;
0 1 1 pc I
MethodParameters:
Name Flags
pc
public int get4(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
bipush 24
ishl
1: aload 0
iload 1
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
bipush 16
ishl
2: ior
3: aload 0
iload 1
iconst_2
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
bipush 8
ishl
4: ior
5: aload 0
iload 1
iconst_3
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
6: ior
7: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
0 8 1 pc I
MethodParameters:
Name Flags
pc
public boolean isAlive();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifne 1
aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
ifnonnull 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/Code;
public void markDead();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.alive:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/Code;
public int entryPoint();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
istore 1
start local 1 1: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
2: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
3: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/Code;
1 4 1 pc I
public int entryPoint(com.sun.tools.javac.jvm.Code$State);
descriptor: (Lcom/sun/tools/javac/jvm/Code$State;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
istore 2
start local 2 1: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
2: aload 1
invokevirtual com.sun.tools.javac.jvm.Code$State.dup:()Lcom/sun/tools/javac/jvm/Code$State;
astore 3
start local 3 3: aload 0
aload 3
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
invokevirtual com.sun.tools.javac.jvm.Code.setDefined:(Lcom/sun/tools/javac/util/Bits;)V
4: aload 0
aload 3
putfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
5: aload 1
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
aload 0
getfield com.sun.tools.javac.jvm.Code.max_stack:I
if_icmpgt 6
iconst_1
goto 7
StackMap locals: int com.sun.tools.javac.jvm.Code$State
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
8: aload 0
getfield com.sun.tools.javac.jvm.Code.debugCode:Z
ifeq 9
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "entry point "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
10: iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 state Lcom/sun/tools/javac/jvm/Code$State;
1 11 2 pc I
3 11 3 newState Lcom/sun/tools/javac/jvm/Code$State;
MethodParameters:
Name Flags
state
public int entryPoint(com.sun.tools.javac.jvm.Code$State, com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/jvm/Code$State;Lcom/sun/tools/javac/code/Type;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
istore 3
start local 3 1: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
2: aload 1
invokevirtual com.sun.tools.javac.jvm.Code$State.dup:()Lcom/sun/tools/javac/jvm/Code$State;
astore 4
start local 4 3: aload 0
aload 4
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
invokevirtual com.sun.tools.javac.jvm.Code.setDefined:(Lcom/sun/tools/javac/util/Bits;)V
4: aload 0
aload 4
putfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
5: aload 1
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
aload 0
getfield com.sun.tools.javac.jvm.Code.max_stack:I
if_icmpgt 6
iconst_1
goto 7
StackMap locals: int com.sun.tools.javac.jvm.Code$State
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
8: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$State.push:(Lcom/sun/tools/javac/code/Type;)V
9: aload 0
getfield com.sun.tools.javac.jvm.Code.debugCode:Z
ifeq 10
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "entry point "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
10: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
11: iload 3
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/jvm/Code;
0 12 1 state Lcom/sun/tools/javac/jvm/Code$State;
0 12 2 pushed Lcom/sun/tools/javac/code/Type;
1 12 3 pc I
3 12 4 newState Lcom/sun/tools/javac/jvm/Code$State;
MethodParameters:
Name Flags
state
pushed
public void emitStackMap();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
istore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
ifne 2
return
2: StackMap locals: int
StackMap stack:
invokestatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat:()[I
aload 0
getfield com.sun.tools.javac.jvm.Code.stackMap:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.ordinal:()I
iaload
tableswitch { // 2 - 3
2: 3
3: 5
default: 7
}
3: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.getLocalsSize:()I
invokevirtual com.sun.tools.javac.jvm.Code.emitCLDCStackMap:(II)V
4: goto 8
5: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.getLocalsSize:()I
invokevirtual com.sun.tools.javac.jvm.Code.emitStackMapFrame:(II)V
6: goto 8
7: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Should have chosen a stackmap format"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.debugCode:Z
ifeq 9
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
iload 1
invokevirtual com.sun.tools.javac.jvm.Code$State.dump:(I)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/Code;
1 10 1 pc I
private int getLocalsSize();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.jvm.Code.max_locals:I
iconst_1
isub
istore 2
start local 2 2: goto 7
3: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 2
invokevirtual com.sun.tools.javac.util.Bits.isMember:(I)Z
ifeq 6
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
aaload
ifnull 6
4: iload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 1
5: goto 8
6: StackMap locals:
StackMap stack:
iinc 2 -1
StackMap locals:
StackMap stack:
7: iload 2
ifge 3
end local 2 8: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/jvm/Code;
1 9 1 nextLocal I
2 8 2 i I
void emitCLDCStackMap(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.lastStackMapPC:I
iload 1
if_icmpne 2
1: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
iconst_1
isub
dup_x1
putfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
aconst_null
aastore
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield com.sun.tools.javac.jvm.Code.lastStackMapPC:I
3: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
ifnonnull 6
4: aload 0
bipush 20
anewarray com.sun.tools.javac.jvm.Code$StackMapFrame
putfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
invokestatic com.sun.tools.javac.util.ArrayUtils.ensureCapacity:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$StackMapFrame[]
putfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
new com.sun.tools.javac.jvm.Code$StackMapFrame
dup
invokespecial com.sun.tools.javac.jvm.Code$StackMapFrame.<init>:()V
dup_x2
aastore
8: astore 3
start local 3 9: aload 3
iload 1
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
10: aload 3
iload 2
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
11: iconst_0
istore 4
start local 4 12: goto 19
13: StackMap locals: com.sun.tools.javac.jvm.Code$StackMapFrame int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 4
invokevirtual com.sun.tools.javac.util.Bits.isMember:(I)Z
ifeq 18
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 4
aaload
ifnull 18
14: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 4
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
astore 5
start local 5 15: aload 5
instanceof com.sun.tools.javac.jvm.UninitializedType
ifne 17
16: aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 5
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 5
17: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 3
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 4
aload 5
aastore
end local 5 18: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
iload 2
if_icmplt 13
end local 4 20: aload 3
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
21: iconst_0
istore 4
start local 4 22: goto 25
23: StackMap locals:
StackMap stack:
aload 3
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
iload 4
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
iload 4
aaload
aastore
24: iinc 4 1
StackMap locals:
StackMap stack:
25: iload 4
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmplt 23
end local 4 26: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/tools/javac/jvm/Code;
0 27 1 pc I
0 27 2 localsSize I
9 27 3 frame Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
12 20 4 i I
15 18 5 vtype Lcom/sun/tools/javac/code/Type;
22 26 4 i I
MethodParameters:
Name Flags
pc
localsSize
void emitStackMapFrame(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
ifnonnull 3
1: aload 0
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.getInitialFrame:()Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
putfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
2: goto 7
StackMap locals:
StackMap stack:
3: aload 0
getfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
iload 1
if_icmpne 7
4: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
iconst_1
isub
dup_x1
putfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
aconst_null
aastore
5: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.frameBeforeLast:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
putfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
6: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.frameBeforeLast:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
7: StackMap locals:
StackMap stack:
new com.sun.tools.javac.jvm.Code$StackMapFrame
dup
invokespecial com.sun.tools.javac.jvm.Code$StackMapFrame.<init>:()V
astore 3
start local 3 8: aload 3
iload 1
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
9: iconst_0
istore 4
start local 4 10: iload 2
anewarray com.sun.tools.javac.code.Type
astore 5
start local 5 11: iconst_0
istore 6
start local 6 12: goto 20
13: StackMap locals: com.sun.tools.javac.jvm.Code int int com.sun.tools.javac.jvm.Code$StackMapFrame int com.sun.tools.javac.code.Type[] int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 6
invokevirtual com.sun.tools.javac.util.Bits.isMember:(I)Z
ifeq 19
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 6
aaload
ifnull 19
14: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 6
aaload
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
astore 7
start local 7 15: aload 7
instanceof com.sun.tools.javac.jvm.UninitializedType
ifne 17
16: aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 7
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 7
17: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 5
iload 6
aload 7
aastore
18: aload 7
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iconst_1
if_icmple 19
iinc 6 1
end local 7 19: StackMap locals:
StackMap stack:
iinc 6 1
iinc 4 1
StackMap locals:
StackMap stack:
20: iload 6
iload 2
if_icmplt 13
end local 6 21: aload 3
iload 4
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
22: iconst_0
istore 6
start local 6 23: iconst_0
istore 7
start local 7 24: goto 31
25: StackMap locals: int
StackMap stack:
iload 7
iload 4
if_icmpge 26
iconst_1
goto 27
StackMap locals:
StackMap stack:
26: iconst_0
StackMap locals:
StackMap stack: int
27: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
28: aload 3
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 7
aload 5
iload 6
aaload
aastore
29: aload 5
iload 6
aaload
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iconst_1
if_icmple 30
iinc 6 1
30: StackMap locals:
StackMap stack:
iinc 6 1
iinc 7 1
StackMap locals:
StackMap stack:
31: iload 6
iload 2
if_icmplt 25
end local 7 end local 6 32: iconst_0
istore 6
start local 6 33: iconst_0
istore 7
start local 7 34: goto 38
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
ifnull 37
36: iinc 6 1
37: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
38: iload 7
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmplt 35
end local 7 39: aload 3
iload 6
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
40: iconst_0
istore 6
41: iconst_0
istore 7
start local 7 42: goto 46
43: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
ifnull 45
44: aload 3
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
iload 6
iinc 6 1
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
aastore
45: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
46: iload 7
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmplt 43
end local 7 47: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
ifnonnull 50
48: aload 0
bipush 20
anewarray com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame
putfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
49: goto 54
50: StackMap locals:
StackMap stack:
aload 0
51: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
52: aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
53: invokestatic com.sun.tools.javac.util.ArrayUtils.ensureCapacity:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame[]
putfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
54: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
55: aload 3
aload 0
getfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
aload 0
getfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokestatic com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame.getInstance:(Lcom/sun/tools/javac/jvm/Code$StackMapFrame;I[Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
56: aastore
57: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
putfield com.sun.tools.javac.jvm.Code.frameBeforeLast:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
58: aload 0
aload 3
putfield com.sun.tools.javac.jvm.Code.lastFrame:Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
59: return
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 60 0 this Lcom/sun/tools/javac/jvm/Code;
0 60 1 pc I
0 60 2 localsSize I
8 60 3 frame Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
10 60 4 localCount I
11 60 5 locals [Lcom/sun/tools/javac/code/Type;
12 21 6 i I
15 19 7 vtype Lcom/sun/tools/javac/code/Type;
23 32 6 i I
24 32 7 j I
33 60 6 stackCount I
34 39 7 i I
42 47 7 i I
MethodParameters:
Name Flags
pc
localsSize
com.sun.tools.javac.jvm.Code$StackMapFrame getInitialFrame();
descriptor: ()Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
flags: (0x0000)
Code:
stack=4, locals=7, args_size=1
start local 0 0: new com.sun.tools.javac.jvm.Code$StackMapFrame
dup
invokespecial com.sun.tools.javac.jvm.Code$StackMapFrame.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.externalType:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$MethodType
getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
astore 2
start local 2 2: aload 2
invokevirtual com.sun.tools.javac.util.List.length:()I
istore 3
start local 3 3: iconst_0
istore 4
start local 4 4: aload 0
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isStatic:()Z
ifne 12
5: aload 0
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
astore 5
start local 5 6: aload 1
iload 3
iconst_1
iadd
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
7: aload 0
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isConstructor:()Z
ifeq 10
aload 5
aload 0
getfield com.sun.tools.javac.jvm.Code.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.objectType:Lcom/sun/tools/javac/code/Type;
if_acmpeq 10
8: aload 1
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 4
iinc 4 1
aload 5
invokestatic com.sun.tools.javac.jvm.UninitializedType.uninitializedThis:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/jvm/UninitializedType;
aastore
9: goto 13
10: StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.jvm.Code$StackMapFrame com.sun.tools.javac.util.List int int com.sun.tools.javac.code.Type
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 4
iinc 4 1
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 5
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
aastore
end local 5 11: goto 13
12: StackMap locals:
StackMap stack:
aload 1
iload 3
anewarray com.sun.tools.javac.code.Type
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
13: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 16
StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.jvm.Code$StackMapFrame com.sun.tools.javac.util.List int int top java.util.Iterator
StackMap stack:
14: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 5
start local 5 15: aload 1
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 4
iinc 4 1
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
aload 5
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
aastore
end local 5 16: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
17: aload 1
iconst_m1
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
18: aload 1
aconst_null
putfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
19: aload 1
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lcom/sun/tools/javac/jvm/Code;
1 20 1 frame Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
2 20 2 arg_types Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
3 20 3 len I
4 20 4 count I
6 11 5 thisType Lcom/sun/tools/javac/code/Type;
15 16 5 arg_type Lcom/sun/tools/javac/code/Type;
public static int negate(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush 198
if_icmpne 1
sipush 199
ireturn
1: StackMap locals:
StackMap stack:
iload 0
sipush 199
if_icmpne 2
sipush 198
ireturn
2: StackMap locals:
StackMap stack:
iload 0
iconst_1
iadd
iconst_1
ixor
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 opcode I
MethodParameters:
Name Flags
opcode
public int emitJump(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.fatcode:Z
ifeq 9
1: iload 1
sipush 167
if_icmpeq 2
iload 1
sipush 168
if_icmpne 4
2: StackMap locals:
StackMap stack:
aload 0
iload 1
sipush 200
iadd
sipush 167
isub
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emitop4:(II)V
3: goto 8
4: StackMap locals:
StackMap stack:
aload 0
iload 1
invokestatic com.sun.tools.javac.jvm.Code.negate:(I)I
bipush 8
invokevirtual com.sun.tools.javac.jvm.Code.emitop2:(II)V
5: aload 0
sipush 200
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emitop4:(II)V
6: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
7: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_5
isub
ireturn
9: StackMap locals:
StackMap stack:
aload 0
iload 1
iconst_0
invokevirtual com.sun.tools.javac.jvm.Code.emitop2:(II)V
10: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_3
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 opcode I
MethodParameters:
Name Flags
opcode
public com.sun.tools.javac.jvm.Code$Chain branch(int);
descriptor: (I)Lcom/sun/tools/javac/jvm/Code$Chain;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: iload 1
sipush 167
if_icmpne 4
2: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
astore 2
3: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
4: StackMap locals: com.sun.tools.javac.jvm.Code$Chain
StackMap stack:
iload 1
sipush 168
if_icmpeq 11
aload 0
invokevirtual com.sun.tools.javac.jvm.Code.isAlive:()Z
ifeq 11
5: new com.sun.tools.javac.jvm.Code$Chain
dup
aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.Code.emitJump:(I)I
6: aload 2
7: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual com.sun.tools.javac.jvm.Code$State.dup:()Lcom/sun/tools/javac/jvm/Code$State;
8: invokespecial com.sun.tools.javac.jvm.Code$Chain.<init>:(ILcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$State;)V
astore 2
9: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.fatcode:Z
putfield com.sun.tools.javac.jvm.Code.fixedPc:Z
10: iload 1
sipush 167
if_icmpne 11
aload 0
iconst_0
putfield com.sun.tools.javac.jvm.Code.alive:Z
11: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/jvm/Code;
0 12 1 opcode I
1 12 2 result Lcom/sun/tools/javac/jvm/Code$Chain;
MethodParameters:
Name Flags
opcode
public void resolve(com.sun.tools.javac.jvm.Code$Chain, int);
descriptor: (Lcom/sun/tools/javac/jvm/Code$Chain;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
astore 4
start local 4 2: goto 46
3: StackMap locals: int com.sun.tools.javac.jvm.Code$State
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
if_acmpeq 6
4: iload 2
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
if_icmpgt 5
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
ifne 6
StackMap locals:
StackMap stack:
5: iconst_1
goto 7
StackMap locals:
StackMap stack:
6: iconst_0
7: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
8: iload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
if_icmplt 11
9: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
istore 2
10: goto 14
StackMap locals:
StackMap stack:
11: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
sipush 167
if_icmpne 14
12: aload 0
getfield com.sun.tools.javac.jvm.Code.fatcode:Z
ifeq 13
iload 2
aload 0
iload 2
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get4:(I)I
iadd
istore 2
goto 14
13: StackMap locals:
StackMap stack:
iload 2
aload 0
iload 2
iconst_1
iadd
invokevirtual com.sun.tools.javac.jvm.Code.get2:(I)I
iadd
istore 2
14: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
invokevirtual com.sun.tools.javac.jvm.Code.get1:(I)I
sipush 167
if_icmpne 23
15: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
iconst_3
iadd
iload 2
if_icmpne 23
iload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
if_icmpne 23
aload 0
getfield com.sun.tools.javac.jvm.Code.fixedPc:Z
ifne 23
16: aload 0
getfield com.sun.tools.javac.jvm.Code.varDebugInfo:Z
ifeq 18
17: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
bipush -3
invokevirtual com.sun.tools.javac.jvm.Code.adjustAliveRanges:(II)V
18: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.cp:I
iconst_3
isub
putfield com.sun.tools.javac.jvm.Code.cp:I
19: iinc 2 -3
20: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.next:Lcom/sun/tools/javac/jvm/Code$Chain;
ifnonnull 35
21: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
22: goto 47
23: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.fatcode:Z
ifeq 25
24: aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
iconst_1
iadd
iload 2
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
isub
invokevirtual com.sun.tools.javac.jvm.Code.put4:(II)V
goto 29
25: StackMap locals:
StackMap stack:
iload 2
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
isub
sipush -32768
if_icmplt 27
26: iload 2
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
isub
sipush 32767
if_icmple 28
27: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.fatcode:Z
goto 29
28: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
iconst_1
iadd
iload 2
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
isub
invokevirtual com.sun.tools.javac.jvm.Code.put2:(II)V
29: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 33
30: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
aload 4
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmpne 32
31: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
aload 4
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
if_icmpeq 33
StackMap locals:
StackMap stack:
32: iconst_0
goto 34
StackMap locals:
StackMap stack:
33: iconst_1
34: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
35: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.fixedPc:Z
36: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
iload 2
if_icmpne 45
37: iconst_1
istore 3
38: aload 0
getfield com.sun.tools.javac.jvm.Code.debugCode:Z
ifeq 40
39: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "resolving chain state="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
40: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 43
41: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
invokevirtual com.sun.tools.javac.jvm.Code$State.join:(Lcom/sun/tools/javac/jvm/Code$State;)Lcom/sun/tools/javac/jvm/Code$State;
astore 4
42: goto 45
43: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
astore 4
44: aload 0
iconst_1
putfield com.sun.tools.javac.jvm.Code.alive:Z
45: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.next:Lcom/sun/tools/javac/jvm/Code$Chain;
astore 1
StackMap locals:
StackMap stack:
46: aload 1
ifnonnull 3
47: StackMap locals:
StackMap stack:
iload 3
ifeq 48
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
if_acmpne 48
iconst_0
goto 49
StackMap locals:
StackMap stack:
48: iconst_1
StackMap locals:
StackMap stack: int
49: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
50: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
aload 4
if_acmpeq 54
51: aload 0
aload 4
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
invokevirtual com.sun.tools.javac.jvm.Code.setDefined:(Lcom/sun/tools/javac/util/Bits;)V
52: aload 0
aload 4
putfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
53: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.needStackMap:Z
putfield com.sun.tools.javac.jvm.Code.pendingStackMap:Z
54: 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 55 0 this Lcom/sun/tools/javac/jvm/Code;
0 55 1 chain Lcom/sun/tools/javac/jvm/Code$Chain;
0 55 2 target I
1 55 3 changed Z
2 55 4 newState Lcom/sun/tools/javac/jvm/Code$State;
MethodParameters:
Name Flags
chain
target
public void resolve(com.sun.tools.javac.jvm.Code$Chain);
descriptor: (Lcom/sun/tools/javac/jvm/Code$Chain;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 5
1: aload 1
ifnull 5
2: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmpne 4
3: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
if_icmpeq 5
StackMap locals:
StackMap stack:
4: iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
6: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
7: aload 0
aload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
invokestatic com.sun.tools.javac.jvm.Code.mergeChains:(Lcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$Chain;)Lcom/sun/tools/javac/jvm/Code$Chain;
putfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/jvm/Code;
0 9 1 chain Lcom/sun/tools/javac/jvm/Code$Chain;
MethodParameters:
Name Flags
chain
public void resolvePending();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
astore 1
start local 1 1: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
2: aload 0
aload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
invokevirtual com.sun.tools.javac.jvm.Code.resolve:(Lcom/sun/tools/javac/jvm/Code$Chain;I)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/Code;
1 4 1 x Lcom/sun/tools/javac/jvm/Code$Chain;
public static com.sun.tools.javac.jvm.Code$Chain mergeChains(com.sun.tools.javac.jvm.Code$Chain, com.sun.tools.javac.jvm.Code$Chain);
descriptor: (Lcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$Chain;)Lcom/sun/tools/javac/jvm/Code$Chain;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
aload 0
ifnonnull 2
aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.stacksize:I
if_icmpne 4
3: aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.nlocks:I
if_icmpne 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
5: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
6: aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
if_icmpge 12
7: new com.sun.tools.javac.jvm.Code$Chain
dup
8: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
9: aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.next:Lcom/sun/tools/javac/jvm/Code$Chain;
invokestatic com.sun.tools.javac.jvm.Code.mergeChains:(Lcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$Chain;)Lcom/sun/tools/javac/jvm/Code$Chain;
10: aload 1
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
11: invokespecial com.sun.tools.javac.jvm.Code$Chain.<init>:(ILcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$State;)V
areturn
12: StackMap locals:
StackMap stack:
new com.sun.tools.javac.jvm.Code$Chain
dup
13: aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.pc:I
14: aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.next:Lcom/sun/tools/javac/jvm/Code$Chain;
aload 1
invokestatic com.sun.tools.javac.jvm.Code.mergeChains:(Lcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$Chain;)Lcom/sun/tools/javac/jvm/Code$Chain;
15: aload 0
getfield com.sun.tools.javac.jvm.Code$Chain.state:Lcom/sun/tools/javac/jvm/Code$State;
16: invokespecial com.sun.tools.javac.jvm.Code$Chain.<init>:(ILcom/sun/tools/javac/jvm/Code$Chain;Lcom/sun/tools/javac/jvm/Code$State;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 chain1 Lcom/sun/tools/javac/jvm/Code$Chain;
0 17 1 chain2 Lcom/sun/tools/javac/jvm/Code$Chain;
MethodParameters:
Name Flags
chain1
chain2
public void addCatch(char, char, char, char);
descriptor: (CCCC)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
iconst_4
newarray 5
dup
iconst_0
iload 1
castore
dup
iconst_1
iload 2
castore
dup
iconst_2
iload 3
castore
dup
iconst_3
iload 4
castore
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
1: return
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 Lcom/sun/tools/javac/jvm/Code;
0 2 1 startPc C
0 2 2 endPc C
0 2 3 handlerPc C
0 2 4 catchType C
MethodParameters:
Name Flags
startPc
endPc
handlerPc
catchType
public void compressCatchTable();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 1
start local 1 1: invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
astore 2
start local 2 2: aload 0
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast char[]
astore 3
start local 3 4: aload 2
aload 3
iconst_2
caload
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
astore 2
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 0
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 4
goto 15
StackMap locals:
StackMap stack:
7: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast char[]
astore 3
start local 3 8: aload 3
iconst_0
caload
istore 5
start local 5 9: aload 3
iconst_1
caload
istore 6
start local 6 10: iload 5
iload 6
if_icmpeq 15
11: iload 5
iload 6
iconst_1
isub
if_icmpne 14
12: aload 2
iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual com.sun.tools.javac.util.List.contains:(Ljava/lang/Object;)Z
ifeq 14
13: goto 15
14: StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List char[] java.util.Iterator int int
StackMap stack:
aload 1
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 6 end local 5 end local 3 15: StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
16: aload 0
aload 1
putfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
17: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/javac/jvm/Code;
1 18 1 compressedCatchInfo Lcom/sun/tools/javac/util/ListBuffer<[C>;
2 18 2 handlerPcs Lcom/sun/tools/javac/util/List<Ljava/lang/Integer;>;
4 5 3 catchEntry [C
8 15 3 catchEntry [C
9 15 5 startpc I
10 15 6 endpc I
public void addLineNumber(char, char);
descriptor: (CC)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.lineDebugInfo:Z
ifeq 5
1: aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 3
aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
iconst_0
caload
iload 1
if_icmpne 3
2: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifne 4
aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
iconst_1
caload
iload 2
if_icmpeq 5
4: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
iconst_2
newarray 5
dup
iconst_0
iload 1
castore
dup
iconst_1
iload 2
castore
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
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 Lcom/sun/tools/javac/jvm/Code;
0 6 1 startPc C
0 6 2 lineNumber C
MethodParameters:
Name Flags
startPc
lineNumber
public void statBegin(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_m1
if_icmpeq 2
1: aload 0
iload 1
putfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/Code;
0 3 1 pos I
MethodParameters:
Name Flags
pos
public void markStatBegin();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 6
aload 0
getfield com.sun.tools.javac.jvm.Code.lineDebugInfo:Z
ifeq 6
1: aload 0
getfield com.sun.tools.javac.jvm.Code.lineMap:Lcom/sun/tools/javac/util/Position$LineMap;
aload 0
getfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
invokeinterface com.sun.tools.javac.util.Position$LineMap.getLineNumber:(I)I
istore 1
start local 1 2: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
i2c
istore 2
start local 2 3: iload 1
i2c
istore 3
start local 3 4: iload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
if_icmpne 6
iload 3
iload 1
if_icmpne 6
5: aload 0
iload 2
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.addLineNumber:(CC)V
end local 3 end local 2 end local 1 6: StackMap locals:
StackMap stack:
aload 0
iconst_m1
putfield com.sun.tools.javac.jvm.Code.pendingStatPos:I
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
2 6 1 line I
3 6 2 cp1 C
4 6 3 line1 C
private void addLocalVar(com.sun.tools.javac.code.Symbol$VarSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$VarSymbol.adr:I
istore 2
start local 2 1: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
iconst_1
iadd
invokestatic com.sun.tools.javac.util.ArrayUtils.ensureCapacity:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar[]
putfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
2: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
aaload
invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
3: aload 0
getfield com.sun.tools.javac.jvm.Code.pendingJumps:Lcom/sun/tools/javac/jvm/Code$Chain;
ifnull 5
4: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.resolvePending:()V
5: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
new com.sun.tools.javac.jvm.Code$LocalVar
dup
aload 1
invokespecial com.sun.tools.javac.jvm.Code$LocalVar.<init>:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
aastore
6: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 2
invokevirtual com.sun.tools.javac.util.Bits.excl:(I)V
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
0 8 1 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
1 8 2 adr I
MethodParameters:
Name Flags
v
void adjustAliveRanges(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=3, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 9
StackMap locals: com.sun.tools.javac.jvm.Code int int top int int com.sun.tools.javac.jvm.Code$LocalVar[]
StackMap stack:
1: aload 6
iload 4
aaload
astore 3
start local 3 2: aload 3
ifnull 8
3: aload 3
getfield com.sun.tools.javac.jvm.Code$LocalVar.aliveRanges:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 7
StackMap locals: com.sun.tools.javac.jvm.Code int int com.sun.tools.javac.jvm.Code$LocalVar int int com.sun.tools.javac.jvm.Code$LocalVar[] top java.util.Iterator
StackMap stack:
4: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar$Range
astore 7
start local 7 5: aload 7
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar$Range.closed:()Z
ifeq 7
aload 7
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
aload 7
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
iadd
iload 1
if_icmplt 7
6: aload 7
dup
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
iload 2
iadd
i2c
putfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
end local 7 7: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 3 8: StackMap locals: com.sun.tools.javac.jvm.Code int int top int int com.sun.tools.javac.jvm.Code$LocalVar[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 5
if_icmplt 1
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 oldCP I
0 11 2 delta I
2 8 3 localVar Lcom/sun/tools/javac/jvm/Code$LocalVar;
5 7 7 range Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
MethodParameters:
Name Flags
oldCP
delta
public int getLVTSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 2
aaload
astore 3
start local 3 4: iload 1
aload 3
getfield com.sun.tools.javac.jvm.Code$LocalVar.aliveRanges:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
iadd
istore 1
end local 3 5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 3
end local 2 7: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
1 8 1 result I
2 7 2 i I
4 5 3 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
public void setDefined(com.sun.tools.javac.util.Bits);
descriptor: (Lcom/sun/tools/javac/util/Bits;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.alive:Z
ifeq 12
aload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
if_acmpeq 12
1: new com.sun.tools.javac.util.Bits
dup
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
invokespecial com.sun.tools.javac.util.Bits.<init>:(Lcom/sun/tools/javac/util/Bits;)V
aload 1
invokevirtual com.sun.tools.javac.util.Bits.xorSet:(Lcom/sun/tools/javac/util/Bits;)Lcom/sun/tools/javac/util/Bits;
astore 2
start local 2 2: aload 2
iconst_0
invokevirtual com.sun.tools.javac.util.Bits.nextBit:(I)I
istore 3
start local 3 3: goto 10
4: StackMap locals: com.sun.tools.javac.util.Bits int
StackMap stack:
iload 3
aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
if_icmplt 6
5: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 3
invokevirtual com.sun.tools.javac.util.Bits.excl:(I)V
goto 9
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 3
invokevirtual com.sun.tools.javac.util.Bits.isMember:(I)Z
ifeq 8
7: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.setUndefined:(I)V
goto 9
8: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.setDefined:(I)V
9: StackMap locals:
StackMap stack:
aload 2
iload 3
iconst_1
iadd
invokevirtual com.sun.tools.javac.util.Bits.nextBit:(I)I
istore 3
10: StackMap locals:
StackMap stack:
iload 3
11: ifge 4
end local 3 end local 2 12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/jvm/Code;
0 13 1 newDefined Lcom/sun/tools/javac/util/Bits;
2 12 2 diff Lcom/sun/tools/javac/util/Bits;
3 12 3 adr I
MethodParameters:
Name Flags
newDefined
public void setDefined(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
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
astore 2
start local 2 1: aload 2
ifnonnull 4
2: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 1
invokevirtual com.sun.tools.javac.util.Bits.excl:(I)V
3: goto 7
4: StackMap locals: com.sun.tools.javac.jvm.Code$LocalVar
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 1
invokevirtual com.sun.tools.javac.util.Bits.incl:(I)V
5: aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
ldc 65535
if_icmpge 7
6: aload 2
aload 0
getfield com.sun.tools.javac.jvm.Code.cp:I
i2c
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.openRange:(C)V
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/Code;
0 8 1 adr I
1 8 2 v Lcom/sun/tools/javac/jvm/Code$LocalVar;
MethodParameters:
Name Flags
adr
public void setUndefined(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 1
invokevirtual com.sun.tools.javac.util.Bits.excl:(I)V
1: iload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
arraylength
if_icmpge 12
2: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
ifnull 12
3: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.isLastRangeInitialized:()Z
ifeq 12
4: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
astore 2
start local 2 5: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.lastRange:()Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
isub
i2c
istore 3
start local 3 6: iload 3
ldc 65535
if_icmpge 11
7: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.dup:()Lcom/sun/tools/javac/jvm/Code$LocalVar;
aastore
8: aload 2
iload 3
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.closeRange:(C)V
9: aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.Code.putVar:(Lcom/sun/tools/javac/jvm/Code$LocalVar;)V
10: goto 12
11: StackMap locals: com.sun.tools.javac.jvm.Code$LocalVar int
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.removeLastRange:()V
end local 3 end local 2 12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/jvm/Code;
0 13 1 adr I
5 12 2 v Lcom/sun/tools/javac/jvm/Code$LocalVar;
6 12 3 length C
MethodParameters:
Name Flags
adr
private void endScope(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
astore 2
start local 2 1: aload 2
ifnull 9
2: aload 2
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.isLastRangeInitialized:()Z
ifeq 8
3: aload 0
invokevirtual com.sun.tools.javac.jvm.Code.curCP:()I
aload 2
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.lastRange:()Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
isub
i2c
istore 3
start local 3 4: iload 3
ldc 65535
if_icmpge 8
5: aload 2
iload 3
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.closeRange:(C)V
6: aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.Code.putVar:(Lcom/sun/tools/javac/jvm/Code$LocalVar;)V
7: aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.Code.fillLocalVarPosition:(Lcom/sun/tools/javac/jvm/Code$LocalVar;)V
end local 3 8: StackMap locals: com.sun.tools.javac.jvm.Code$LocalVar
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.lvar:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aconst_null
aastore
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.state:Lcom/sun/tools/javac/jvm/Code$State;
getfield com.sun.tools.javac.jvm.Code$State.defined:Lcom/sun/tools/javac/util/Bits;
iload 1
invokevirtual com.sun.tools.javac.util.Bits.excl:(I)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/jvm/Code;
0 11 1 adr I
1 11 2 v Lcom/sun/tools/javac/jvm/Code$LocalVar;
4 8 3 length C
MethodParameters:
Name Flags
adr
private void fillLocalVarPosition(com.sun.tools.javac.jvm.Code$LocalVar);
descriptor: (Lcom/sun/tools/javac/jvm/Code$LocalVar;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
ifnull 1
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.hasTypeAnnotations:()Z
ifne 2
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 10
StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.jvm.Code$LocalVar top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$TypeCompound
astore 2
start local 2 4: aload 2
getfield com.sun.tools.javac.code.Attribute$TypeCompound.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
astore 4
start local 4 5: aload 1
invokevirtual com.sun.tools.javac.jvm.Code$LocalVar.getWidestRange:()Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
astore 5
start local 5 6: aload 4
iconst_1
newarray 10
dup
iconst_0
aload 5
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
iastore
putfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarOffset:[I
7: aload 4
iconst_1
newarray 10
dup
iconst_0
aload 5
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
iastore
putfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarLength:[I
8: aload 4
iconst_1
newarray 10
dup
iconst_0
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.reg:C
iastore
putfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarIndex:[I
9: aload 4
iconst_1
putfield com.sun.tools.javac.code.TypeAnnotationPosition.isValidOffset:Z
end local 5 end local 4 end local 2 10: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/jvm/Code;
0 12 1 lv Lcom/sun/tools/javac/jvm/Code$LocalVar;
4 10 2 ta Lcom/sun/tools/javac/code/Attribute$TypeCompound;
5 10 4 p Lcom/sun/tools/javac/code/TypeAnnotationPosition;
6 10 5 widestRange Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
MethodParameters:
Name Flags
lv
public void fillExceptionParameterPositions();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 19
2: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 1
aaload
astore 2
start local 2 3: aload 2
ifnull 18
aload 2
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
ifnull 18
4: aload 2
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.hasTypeAnnotations:()Z
ifeq 18
5: aload 2
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.isExceptionParameter:()Z
ifne 7
6: goto 18
7: StackMap locals: com.sun.tools.javac.jvm.Code$LocalVar
StackMap stack:
aload 2
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 17
StackMap locals: com.sun.tools.javac.jvm.Code int com.sun.tools.javac.jvm.Code$LocalVar top java.util.Iterator
StackMap stack:
8: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$TypeCompound
astore 3
start local 3 9: aload 3
getfield com.sun.tools.javac.code.Attribute$TypeCompound.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
astore 5
start local 5 10: aload 5
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.hasCatchType:()Z
ifeq 17
11: aload 0
aload 5
invokevirtual com.sun.tools.javac.jvm.Code.findExceptionIndex:(Lcom/sun/tools/javac/code/TypeAnnotationPosition;)I
istore 6
start local 6 12: iload 6
iconst_m1
if_icmpne 16
13: new java.lang.StringBuilder
dup
ldc "Could not find exception index for type annotation "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " on exception parameter"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
15: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.tools.javac.util.Assert.error:(Ljava/lang/String;)V
16: StackMap locals: com.sun.tools.javac.jvm.Code int com.sun.tools.javac.jvm.Code$LocalVar com.sun.tools.javac.code.Attribute$TypeCompound java.util.Iterator com.sun.tools.javac.code.TypeAnnotationPosition int
StackMap stack:
aload 5
iload 6
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.setExceptionIndex:(I)V
end local 6 end local 5 end local 3 17: StackMap locals: com.sun.tools.javac.jvm.Code int com.sun.tools.javac.jvm.Code$LocalVar top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
end local 2 18: StackMap locals: com.sun.tools.javac.jvm.Code int
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
19: iload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 2
end local 1 20: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/sun/tools/javac/jvm/Code;
1 20 1 i I
3 18 2 lv Lcom/sun/tools/javac/jvm/Code$LocalVar;
9 17 3 ta Lcom/sun/tools/javac/code/Attribute$TypeCompound;
10 17 5 p Lcom/sun/tools/javac/code/TypeAnnotationPosition;
12 17 6 idx I
private int findExceptionIndex(com.sun.tools.javac.code.TypeAnnotationPosition);
descriptor: (Lcom/sun/tools/javac/code/TypeAnnotationPosition;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.getCatchType:()I
istore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.getStartPos:()I
istore 3
start local 3 2: aload 0
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
istore 4
start local 4 3: aload 0
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 13
6: StackMap locals: com.sun.tools.javac.jvm.Code com.sun.tools.javac.code.TypeAnnotationPosition int int int com.sun.tools.javac.util.List int
StackMap stack:
aload 5
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
astore 7
start local 7 7: aload 5
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 5
8: aload 7
iconst_3
caload
istore 8
start local 8 9: aload 7
iconst_0
caload
istore 9
start local 9 10: iload 2
iload 8
if_icmpne 12
iload 9
iload 3
if_icmpne 12
11: iload 6
ireturn
end local 9 end local 8 end local 7 12: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
13: iload 6
iload 4
if_icmplt 6
end local 6 14: iconst_m1
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 15 0 this Lcom/sun/tools/javac/jvm/Code;
0 15 1 p Lcom/sun/tools/javac/code/TypeAnnotationPosition;
1 15 2 catchType I
2 15 3 startPos I
3 15 4 len I
4 15 5 iter Lcom/sun/tools/javac/util/List<[C>;
5 14 6 i I
7 12 7 catchEntry [C
9 12 8 ct I
10 12 9 sp I
MethodParameters:
Name Flags
p
void putVar(com.sun.tools.javac.jvm.Code$LocalVar);
descriptor: (Lcom/sun/tools/javac/jvm/Code$LocalVar;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.varDebugInfo:Z
ifne 3
1: aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.isExceptionParameter:()Z
ifeq 2
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.hasTypeAnnotations:()Z
ifne 3
2: StackMap locals:
StackMap stack:
iconst_0
goto 4
StackMap locals:
StackMap stack:
3: iconst_1
StackMap locals:
StackMap stack: int
4: istore 2
start local 2 5: iload 2
ifne 6
return
6: StackMap locals: int
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
ldc 4096
land
lconst_0
lcmp
ifeq 10
7: aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
getfield com.sun.tools.javac.code.Symbol$VarSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc 562949953421312
land
lconst_0
lcmp
ifeq 9
8: aload 1
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
ldc 8589934592
land
lconst_0
lcmp
ifne 10
9: StackMap locals:
StackMap stack:
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: istore 3
start local 3 12: iload 3
ifeq 13
return
13: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
ifnonnull 15
14: aload 0
bipush 20
anewarray com.sun.tools.javac.jvm.Code$LocalVar
putfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
goto 16
15: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
aload 0
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
invokestatic com.sun.tools.javac.util.ArrayUtils.ensureCapacity:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar[]
putfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
aload 0
dup
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.javac.jvm.Code.varBufferSize:I
aload 1
aastore
17: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/javac/jvm/Code;
0 18 1 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
5 18 2 keepLocalVariables Z
12 18 3 ignoredSyntheticVar Z
MethodParameters:
Name Flags
var
private int newLocal(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
istore 2
start local 2 1: iload 1
invokestatic com.sun.tools.javac.jvm.Code.width:(I)I
istore 3
start local 3 2: aload 0
iload 2
iload 3
iadd
putfield com.sun.tools.javac.jvm.Code.nextreg:I
3: aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
aload 0
getfield com.sun.tools.javac.jvm.Code.max_locals:I
if_icmple 4
aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
putfield com.sun.tools.javac.jvm.Code.max_locals:I
4: StackMap locals: int int
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/jvm/Code;
0 5 1 typecode I
1 5 2 reg I
2 5 3 w I
MethodParameters:
Name Flags
typecode
private int newLocal(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.sun.tools.javac.jvm.Code.typecode:(Lcom/sun/tools/javac/code/Type;)I
invokevirtual com.sun.tools.javac.jvm.Code.newLocal:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/Code;
0 1 1 type Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
type
public int newLocal(com.sun.tools.javac.code.Symbol$VarSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
aload 1
aload 0
getfield com.sun.tools.javac.jvm.Code.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.Code.newLocal:(Lcom/sun/tools/javac/code/Type;)I
dup_x1
putfield com.sun.tools.javac.code.Symbol$VarSymbol.adr:I
istore 2
start local 2 1: aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.Code.addLocalVar:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
2: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/Code;
0 3 1 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
1 3 2 reg I
MethodParameters:
Name Flags
v
public void newRegSegment();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.Code.max_locals:I
putfield com.sun.tools.javac.jvm.Code.nextreg:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/Code;
public void endScopes(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
istore 2
start local 2 1: aload 0
iload 1
putfield com.sun.tools.javac.jvm.Code.nextreg:I
2: aload 0
getfield com.sun.tools.javac.jvm.Code.nextreg:I
istore 3
start local 3 3: goto 5
StackMap locals: int int
StackMap stack:
4: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.Code.endScope:(I)V
iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 2
if_icmplt 4
end local 3 6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/jvm/Code;
0 7 1 first I
1 7 2 prevNextReg I
3 6 3 i I
MethodParameters:
Name Flags
first
public static java.lang.String mnem(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.sun.tools.javac.jvm.Code$Mneumonics.mnem:[Ljava/lang/String;
iload 0
aaload
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 opcode I
MethodParameters:
Name Flags
opcode
static int[] $SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.tools.javac.jvm.Code$StackMapFormat.values:()[Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.tools.javac.jvm.Code$StackMapFormat.CLDC:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic com.sun.tools.javac.jvm.Code$StackMapFormat.JSR202:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.sun.tools.javac.jvm.Code$StackMapFormat.NONE:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$com$sun$tools$javac$code$TypeTag();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$code$TypeTag:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.tools.javac.code.TypeTag.values:()[Lcom/sun/tools/javac/code/TypeTag;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.tools.javac.code.TypeTag.ARRAY:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 11
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic com.sun.tools.javac.code.TypeTag.BOOLEAN:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 8
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.sun.tools.javac.code.TypeTag.BOT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 19
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic com.sun.tools.javac.code.TypeTag.BYTE:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic com.sun.tools.javac.code.TypeTag.CHAR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iconst_2
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 10
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic com.sun.tools.javac.code.TypeTag.DEFERRED:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 18
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic com.sun.tools.javac.code.TypeTag.DOUBLE:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 7
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic com.sun.tools.javac.code.TypeTag.ERROR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 21
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic com.sun.tools.javac.code.TypeTag.FLOAT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iconst_5
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic com.sun.tools.javac.code.TypeTag.FORALL:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 17
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic com.sun.tools.javac.code.TypeTag.INT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 6
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic com.sun.tools.javac.code.TypeTag.LONG:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iconst_4
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic com.sun.tools.javac.code.TypeTag.METHOD:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 12
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic com.sun.tools.javac.code.TypeTag.MODULE:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 14
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic com.sun.tools.javac.code.TypeTag.NONE:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 20
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
getstatic com.sun.tools.javac.code.TypeTag.PACKAGE:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 13
iastore
51: goto 53
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
52: pop
StackMap locals:
StackMap stack:
53: aload 0
getstatic com.sun.tools.javac.code.TypeTag.SHORT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
iconst_3
iastore
54: goto 56
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
55: pop
StackMap locals:
StackMap stack:
56: aload 0
getstatic com.sun.tools.javac.code.TypeTag.TYPEVAR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 15
iastore
57: goto 59
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
58: pop
StackMap locals:
StackMap stack:
59: aload 0
getstatic com.sun.tools.javac.code.TypeTag.UNDETVAR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 23
iastore
60: goto 62
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
61: pop
StackMap locals:
StackMap stack:
62: aload 0
getstatic com.sun.tools.javac.code.TypeTag.UNINITIALIZED_OBJECT:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 25
iastore
63: goto 65
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
64: pop
StackMap locals:
StackMap stack:
65: aload 0
getstatic com.sun.tools.javac.code.TypeTag.UNINITIALIZED_THIS:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 24
iastore
66: goto 68
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
67: pop
StackMap locals:
StackMap stack:
68: aload 0
getstatic com.sun.tools.javac.code.TypeTag.UNKNOWN:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 22
iastore
69: goto 71
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
70: pop
StackMap locals:
StackMap stack:
71: aload 0
getstatic com.sun.tools.javac.code.TypeTag.VOID:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 9
iastore
72: goto 74
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
73: pop
StackMap locals:
StackMap stack:
74: aload 0
getstatic com.sun.tools.javac.code.TypeTag.WILDCARD:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.TypeTag.ordinal:()I
bipush 16
iastore
75: goto 77
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
76: pop
StackMap locals:
StackMap stack:
77: aload 0
dup
putstatic com.sun.tools.javac.jvm.Code.$SWITCH_TABLE$com$sun$tools$javac$code$TypeTag:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
50 51 52 Class java.lang.NoSuchFieldError
53 54 55 Class java.lang.NoSuchFieldError
56 57 58 Class java.lang.NoSuchFieldError
59 60 61 Class java.lang.NoSuchFieldError
62 63 64 Class java.lang.NoSuchFieldError
65 66 67 Class java.lang.NoSuchFieldError
68 69 70 Class java.lang.NoSuchFieldError
71 72 73 Class java.lang.NoSuchFieldError
74 75 76 Class java.lang.NoSuchFieldError
}
SourceFile: "Code.java"
NestMembers:
com.sun.tools.javac.jvm.Code$Chain com.sun.tools.javac.jvm.Code$LocalVar com.sun.tools.javac.jvm.Code$LocalVar$Range com.sun.tools.javac.jvm.Code$Mneumonics com.sun.tools.javac.jvm.Code$StackMapFormat com.sun.tools.javac.jvm.Code$StackMapFormat$1 com.sun.tools.javac.jvm.Code$StackMapFormat$2 com.sun.tools.javac.jvm.Code$StackMapFrame com.sun.tools.javac.jvm.Code$State
InnerClasses:
public TypeCompound = com.sun.tools.javac.code.Attribute$TypeCompound of com.sun.tools.javac.code.Attribute
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
public ArrayType = com.sun.tools.javac.code.Type$ArrayType of com.sun.tools.javac.code.Type
public JCPrimitiveType = com.sun.tools.javac.code.Type$JCPrimitiveType of com.sun.tools.javac.code.Type
public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
public UniqueType = com.sun.tools.javac.code.Types$UniqueType of com.sun.tools.javac.code.Types
abstract StackMapTableFrame = com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame of com.sun.tools.javac.jvm.ClassWriter
public Chain = com.sun.tools.javac.jvm.Code$Chain of com.sun.tools.javac.jvm.Code
LocalVar = com.sun.tools.javac.jvm.Code$LocalVar of com.sun.tools.javac.jvm.Code
Range = com.sun.tools.javac.jvm.Code$LocalVar$Range of com.sun.tools.javac.jvm.Code$LocalVar
private Mneumonics = com.sun.tools.javac.jvm.Code$Mneumonics of com.sun.tools.javac.jvm.Code
public StackMapFormat = com.sun.tools.javac.jvm.Code$StackMapFormat of com.sun.tools.javac.jvm.Code
StackMapFrame = com.sun.tools.javac.jvm.Code$StackMapFrame of com.sun.tools.javac.jvm.Code
State = com.sun.tools.javac.jvm.Code$State of com.sun.tools.javac.jvm.Code
public MethodHandle = com.sun.tools.javac.jvm.Pool$MethodHandle of com.sun.tools.javac.jvm.Pool
public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
public abstract LineMap = com.sun.tools.javac.util.Position$LineMap of com.sun.tools.javac.util.Position