public class com.sun.tools.javac.jvm.ClassWriter extends com.sun.tools.javac.jvm.ClassFile
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.jvm.ClassWriter
super_class: com.sun.tools.javac.jvm.ClassFile
{
protected static final com.sun.tools.javac.util.Context$Key<com.sun.tools.javac.jvm.ClassWriter> classWriterKey;
descriptor: Lcom/sun/tools/javac/util/Context$Key;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
Signature: Lcom/sun/tools/javac/util/Context$Key<Lcom/sun/tools/javac/jvm/ClassWriter;>;
private final com.sun.tools.javac.util.Options options;
descriptor: Lcom/sun/tools/javac/util/Options;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean verbose;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean emitSourceFile;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean genCrt;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean debugstackmap;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private com.sun.tools.javac.code.Preview preview;
descriptor: Lcom/sun/tools/javac/code/Preview;
flags: (0x0002) ACC_PRIVATE
private com.sun.tools.javac.jvm.Target target;
descriptor: Lcom/sun/tools/javac/jvm/Target;
flags: (0x0002) ACC_PRIVATE
private com.sun.tools.javac.code.Source source;
descriptor: Lcom/sun/tools/javac/code/Source;
flags: (0x0002) ACC_PRIVATE
private com.sun.tools.javac.code.Types types;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x0002) ACC_PRIVATE
private com.sun.tools.javac.comp.Check check;
descriptor: Lcom/sun/tools/javac/comp/Check;
flags: (0x0002) ACC_PRIVATE
public boolean multiModuleMode;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
private com.sun.tools.javac.util.List<java.util.function.ToIntFunction<com.sun.tools.javac.code.Symbol>> ;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Lcom/sun/tools/javac/util/List<Ljava/util/function/ToIntFunction<Lcom/sun/tools/javac/code/Symbol;>;>;
static final int DATA_BUF_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 65520
static final int CLASS_BUF_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 131056
public com.sun.tools.javac.util.ByteBuffer databuf;
descriptor: Lcom/sun/tools/javac/util/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
com.sun.tools.javac.util.ByteBuffer poolbuf;
descriptor: Lcom/sun/tools/javac/util/ByteBuffer;
flags: (0x0000)
final com.sun.tools.javac.jvm.PoolWriter poolWriter;
descriptor: Lcom/sun/tools/javac/jvm/PoolWriter;
flags: (0x0010) ACC_FINAL
private final com.sun.tools.javac.util.Log log;
descriptor: Lcom/sun/tools/javac/util/Log;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.util.Names names;
descriptor: Lcom/sun/tools/javac/util/Names;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.tools.JavaFileManager fileManager;
descriptor: Ljavax/tools/JavaFileManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final int SAME_FRAME_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 64
static final int SAME_LOCALS_1_STACK_ITEM_EXTENDED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 247
static final int SAME_FRAME_EXTENDED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 251
static final int FULL_FRAME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 255
static final int MAX_LOCAL_LENGTH_DIFF;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
private boolean dumpClassModifiers;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean dumpFieldModifiers;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean dumpInnerClassModifiers;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean dumpMethodModifiers;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String[] flagName;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
com.sun.tools.javac.jvm.ClassWriter$AttributeWriter awriter;
descriptor: Lcom/sun/tools/javac/jvm/ClassWriter$AttributeWriter;
flags: (0x0000)
private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$code$TargetType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
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
private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$code$Kinds$Kind;
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.util.Context$Key
dup
invokespecial com.sun.tools.javac.util.Context$Key.<init>:()V
putstatic com.sun.tools.javac.jvm.ClassWriter.classWriterKey:Lcom/sun/tools/javac/util/Context$Key;
1: bipush 12
anewarray java.lang.String
dup
iconst_0
2: ldc "PUBLIC"
aastore
dup
iconst_1
ldc "PRIVATE"
aastore
dup
iconst_2
ldc "PROTECTED"
aastore
dup
iconst_3
ldc "STATIC"
aastore
dup
iconst_4
ldc "FINAL"
aastore
dup
iconst_5
3: ldc "SUPER"
aastore
dup
bipush 6
ldc "VOLATILE"
aastore
dup
bipush 7
ldc "TRANSIENT"
aastore
dup
bipush 8
ldc "NATIVE"
aastore
dup
bipush 9
ldc "INTERFACE"
aastore
dup
bipush 10
4: ldc "ABSTRACT"
aastore
dup
bipush 11
ldc "STRICTFP"
aastore
5: putstatic com.sun.tools.javac.jvm.ClassWriter.flagName:[Ljava/lang/String;
6: return
LocalVariableTable:
Start End Slot Name Signature
public static com.sun.tools.javac.jvm.ClassWriter instance(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/ClassWriter;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getstatic com.sun.tools.javac.jvm.ClassWriter.classWriterKey:Lcom/sun/tools/javac/util/Context$Key;
invokevirtual com.sun.tools.javac.util.Context.get:(Lcom/sun/tools/javac/util/Context$Key;)Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.ClassWriter
astore 1
start local 1 1: aload 1
ifnonnull 3
2: new com.sun.tools.javac.jvm.ClassWriter
dup
aload 0
invokespecial com.sun.tools.javac.jvm.ClassWriter.<init>:(Lcom/sun/tools/javac/util/Context;)V
astore 1
3: StackMap locals: com.sun.tools.javac.jvm.ClassWriter
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lcom/sun/tools/javac/util/Context;
1 4 1 instance Lcom/sun/tools/javac/jvm/ClassWriter;
MethodParameters:
Name Flags
context
protected void <init>(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.sun.tools.javac.jvm.ClassFile.<init>:()V
1: aload 0
invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.jvm.ClassWriter.extraAttributeHooks:Lcom/sun/tools/javac/util/List;
2: aload 0
new com.sun.tools.javac.util.ByteBuffer
dup
ldc 65520
invokespecial com.sun.tools.javac.util.ByteBuffer.<init>:(I)V
putfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
3: aload 0
new com.sun.tools.javac.util.ByteBuffer
dup
ldc 131056
invokespecial com.sun.tools.javac.util.ByteBuffer.<init>:(I)V
putfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
4: aload 0
new com.sun.tools.javac.jvm.ClassWriter$AttributeWriter
dup
aload 0
invokespecial com.sun.tools.javac.jvm.ClassWriter$AttributeWriter.<init>:(Lcom/sun/tools/javac/jvm/ClassWriter;)V
putfield com.sun.tools.javac.jvm.ClassWriter.awriter:Lcom/sun/tools/javac/jvm/ClassWriter$AttributeWriter;
5: aload 1
getstatic com.sun.tools.javac.jvm.ClassWriter.classWriterKey:Lcom/sun/tools/javac/util/Context$Key;
aload 0
invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
6: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Log.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Log;
putfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
7: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Names.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Names;
putfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
8: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Options.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Options;
putfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
9: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Preview.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Preview;
putfield com.sun.tools.javac.jvm.ClassWriter.preview:Lcom/sun/tools/javac/code/Preview;
10: aload 0
aload 1
invokestatic com.sun.tools.javac.jvm.Target.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Target;
putfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
11: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Source.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Source;
putfield com.sun.tools.javac.jvm.ClassWriter.source:Lcom/sun/tools/javac/code/Source;
12: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Types.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Types;
putfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
13: aload 0
aload 1
invokestatic com.sun.tools.javac.comp.Check.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Check;
putfield com.sun.tools.javac.jvm.ClassWriter.check:Lcom/sun/tools/javac/comp/Check;
14: aload 0
aload 1
ldc Ljavax/tools/JavaFileManager;
invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.tools.JavaFileManager
putfield com.sun.tools.javac.jvm.ClassWriter.fileManager:Ljavax/tools/JavaFileManager;
15: aload 0
aload 1
invokestatic com.sun.tools.javac.jvm.Gen.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Gen;
getfield com.sun.tools.javac.jvm.Gen.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
putfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
16: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
getstatic com.sun.tools.javac.main.Option.VERBOSE:Lcom/sun/tools/javac/main/Option;
invokevirtual com.sun.tools.javac.util.Options.isSet:(Lcom/sun/tools/javac/main/Option;)Z
putfield com.sun.tools.javac.jvm.ClassWriter.verbose:Z
17: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
getstatic com.sun.tools.javac.main.Option.XJCOV:Lcom/sun/tools/javac/main/Option;
invokevirtual com.sun.tools.javac.util.Options.isSet:(Lcom/sun/tools/javac/main/Option;)Z
putfield com.sun.tools.javac.jvm.ClassWriter.genCrt:Z
18: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
ldc "debug.stackmap"
invokevirtual com.sun.tools.javac.util.Options.isSet:(Ljava/lang/String;)Z
putfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
19: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
getstatic com.sun.tools.javac.main.Option.G_CUSTOM:Lcom/sun/tools/javac/main/Option;
invokevirtual com.sun.tools.javac.util.Options.isUnset:(Lcom/sun/tools/javac/main/Option;)Z
ifne 21
20: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
getstatic com.sun.tools.javac.main.Option.G_CUSTOM:Lcom/sun/tools/javac/main/Option;
ldc "source"
invokevirtual com.sun.tools.javac.util.Options.isSet:(Lcom/sun/tools/javac/main/Option;Ljava/lang/String;)Z
ifne 21
iconst_0
goto 22
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
21: iconst_1
22: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context
StackMap stack: com.sun.tools.javac.jvm.ClassWriter int
putfield com.sun.tools.javac.jvm.ClassWriter.emitSourceFile:Z
23: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
ldc "debug.dumpmodifiers"
invokevirtual com.sun.tools.javac.util.Options.get:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 24: aload 2
ifnull 37
25: aload 0
aload 2
bipush 99
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 26
iconst_1
goto 27
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context java.lang.String
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
26: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context java.lang.String
StackMap stack: com.sun.tools.javac.jvm.ClassWriter int
27: putfield com.sun.tools.javac.jvm.ClassWriter.dumpClassModifiers:Z
28: aload 0
aload 2
bipush 102
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 29
iconst_1
goto 30
StackMap locals:
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
29: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context java.lang.String
StackMap stack: com.sun.tools.javac.jvm.ClassWriter int
30: putfield com.sun.tools.javac.jvm.ClassWriter.dumpFieldModifiers:Z
31: aload 0
aload 2
bipush 105
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 32
iconst_1
goto 33
StackMap locals:
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
32: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context java.lang.String
StackMap stack: com.sun.tools.javac.jvm.ClassWriter int
33: putfield com.sun.tools.javac.jvm.ClassWriter.dumpInnerClassModifiers:Z
34: aload 0
aload 2
bipush 109
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 35
iconst_1
goto 36
StackMap locals:
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
35: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context java.lang.String
StackMap stack: com.sun.tools.javac.jvm.ClassWriter int
36: putfield com.sun.tools.javac.jvm.ClassWriter.dumpMethodModifiers:Z
37: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 38 1 context Lcom/sun/tools/javac/util/Context;
24 38 2 modifierFlags Ljava/lang/String;
MethodParameters:
Name Flags
context
public void addExtraAttributes(java.util.function.ToIntFunction<com.sun.tools.javac.code.Symbol>);
descriptor: (Ljava/util/function/ToIntFunction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.extraAttributeHooks:Lcom/sun/tools/javac/util/List;
aload 1
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.jvm.ClassWriter.extraAttributeHooks:Lcom/sun/tools/javac/util/List;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 2 1 addExtraAttributes Ljava/util/function/ToIntFunction<Lcom/sun/tools/javac/code/Symbol;>;
Signature: (Ljava/util/function/ToIntFunction<Lcom/sun/tools/javac/code/Symbol;>;)V
MethodParameters:
Name Flags
addExtraAttributes
public static java.lang.String flagNames(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: lload 0
ldc 4095
land
lstore 4
start local 4 3: goto 9
4: StackMap locals: java.lang.StringBuilder int long
StackMap stack:
lload 4
lconst_1
land
lconst_0
lcmp
ifeq 7
5: aload 2
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 2
getstatic com.sun.tools.javac.jvm.ClassWriter.flagName:[Ljava/lang/String;
iload 3
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: StackMap locals:
StackMap stack:
lload 4
iconst_1
lshr
lstore 4
8: iinc 3 1
9: StackMap locals:
StackMap stack:
lload 4
lconst_0
lcmp
ifne 4
10: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 flags J
1 11 2 sbuf Ljava/lang/StringBuilder;
2 11 3 i I
3 11 4 f J
MethodParameters:
Name Flags
flags
void putChar(com.sun.tools.javac.util.ByteBuffer, int, int);
descriptor: (Lcom/sun/tools/javac/util/ByteBuffer;II)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iload 3
bipush 8
ishr
sipush 255
iand
i2b
bastore
1: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iconst_1
iadd
iload 3
sipush 255
iand
i2b
bastore
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 3 1 buf Lcom/sun/tools/javac/util/ByteBuffer;
0 3 2 op I
0 3 3 x I
MethodParameters:
Name Flags
buf
op
x
void putInt(com.sun.tools.javac.util.ByteBuffer, int, int);
descriptor: (Lcom/sun/tools/javac/util/ByteBuffer;II)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iload 3
bipush 24
ishr
sipush 255
iand
i2b
bastore
1: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iconst_1
iadd
iload 3
bipush 16
ishr
sipush 255
iand
i2b
bastore
2: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iconst_2
iadd
iload 3
bipush 8
ishr
sipush 255
iand
i2b
bastore
3: aload 1
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iload 2
iconst_3
iadd
iload 3
sipush 255
iand
i2b
bastore
4: return
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/ClassWriter;
0 5 1 buf Lcom/sun/tools/javac/util/ByteBuffer;
0 5 2 adr I
0 5 3 x I
MethodParameters:
Name Flags
buf
adr
x
public int writeAttr(com.sun.tools.javac.util.Name);
descriptor: (Lcom/sun/tools/javac/util/Name;)I
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.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 2
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendInt:(I)V
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.length:I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 4 1 attrName Lcom/sun/tools/javac/util/Name;
1 4 2 index I
MethodParameters:
Name Flags
attrName
public void endAttr(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
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 1
iconst_4
isub
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.length:I
iload 1
isub
invokevirtual com.sun.tools.javac.jvm.ClassWriter.putInt:(Lcom/sun/tools/javac/util/ByteBuffer;II)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 2 1 index I
MethodParameters:
Name Flags
index
int beginAttrs();
descriptor: ()I
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.length:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
void endAttrs(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 1
iconst_2
isub
iload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.putChar:(Lcom/sun/tools/javac/util/ByteBuffer;II)V
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/ClassWriter;
0 2 1 index I
0 2 2 count I
MethodParameters:
Name Flags
index
count
int writeEnclosingMethodAttribute(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.EnclosingMethod:Lcom/sun/tools/javac/util/Name;
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeEnclosingMethodAttribute:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 1 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
MethodParameters:
Name Flags
c
protected int writeEnclosingMethodAttribute(com.sun.tools.javac.util.Name, com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 3
1: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.empty:Lcom/sun/tools/javac/util/Name;
if_acmpeq 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 3
start local 3 4: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.code.Symbol.enclClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 4
start local 4 5: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
ifnull 7
6: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 8
7: StackMap locals: int com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
aconst_null
goto 9
8: StackMap locals:
StackMap stack:
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$MethodSymbol
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.originalEnclosingMethod:()Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
9: StackMap locals:
StackMap stack: com.sun.tools.javac.code.Symbol$MethodSymbol
astore 5
start local 5 10: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 4
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
11: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
ifnonnull 12
iconst_0
goto 13
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Name com.sun.tools.javac.code.Symbol$ClassSymbol int com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$MethodSymbol
StackMap stack: com.sun.tools.javac.util.ByteBuffer
12: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putNameAndType:(Lcom/sun/tools/javac/code/Symbol;)I
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Name com.sun.tools.javac.code.Symbol$ClassSymbol int com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$MethodSymbol
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
13: invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
14: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
15: iconst_1
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 16 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 16 1 attributeName Lcom/sun/tools/javac/util/Name;
0 16 2 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
4 16 3 alenIdx I
5 16 4 enclClass Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
10 16 5 enclMethod Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
MethodParameters:
Name Flags
attributeName
c
int writeFlagAttrs(long);
descriptor: (J)I
flags: (0x0000)
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 3
start local 3 1: lload 1
ldc 131072
land
lconst_0
lcmp
ifeq 5
2: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Deprecated:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 4
start local 4 3: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
4: iinc 3 1
end local 4 5: StackMap locals: int
StackMap stack:
iload 3
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 6 1 flags J
1 6 3 acount I
3 5 4 alenIdx I
MethodParameters:
Name Flags
flags
int writeMemberAttrs(com.sun.tools.javac.code.Symbol, boolean);
descriptor: (Lcom/sun/tools/javac/code/Symbol;Z)I
flags: (0x0000)
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iload 2
ifne 3
2: aload 0
aload 1
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeFlagAttrs:(J)I
istore 3
3: StackMap locals: int
StackMap stack:
aload 1
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
lstore 4
start local 4 4: lload 4
ldc 2147487744
land
ldc 4096
lcmp
ifeq 12
5: lload 4
ldc 536870912
land
lconst_0
lcmp
ifne 12
6: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.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.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifeq 8
7: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.signatureGen:Lcom/sun/tools/javac/jvm/PoolWriter$SharedSignatureGenerator;
aload 1
getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.getThrownTypes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.PoolWriter$SharedSignatureGenerator.hasTypeVar:(Lcom/sun/tools/javac/util/List;)Z
ifeq 12
8: StackMap locals: long
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Signature:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 6
start local 6 9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putSignature:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
10: aload 0
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
11: iinc 3 1
end local 6 12: StackMap locals:
StackMap stack:
iload 3
aload 0
aload 1
invokevirtual com.sun.tools.javac.code.Symbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeJavaAnnotations:(Lcom/sun/tools/javac/util/List;)I
iadd
istore 3
13: iload 3
aload 0
aload 1
invokevirtual com.sun.tools.javac.code.Symbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
iconst_0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeTypeAnnotations:(Lcom/sun/tools/javac/util/List;Z)I
iadd
istore 3
14: 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 15 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 15 1 sym Lcom/sun/tools/javac/code/Symbol;
0 15 2 isRecordComponent Z
1 15 3 acount I
4 15 4 flags J
9 12 6 alenIdx I
MethodParameters:
Name Flags
sym
isRecordComponent
int writeMethodParametersAttr(com.sun.tools.javac.code.Symbol$MethodSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$MethodSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.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;
invokevirtual com.sun.tools.javac.code.Type.asMethodType:()Lcom/sun/tools/javac/code/Type$MethodType;
astore 2
start local 2 1: aload 2
getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
istore 3
start local 3 2: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
ifnull 34
iload 3
ifeq 34
3: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.MethodParameters:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 4
start local 4 4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 3
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
5: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.extraParams:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 13
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$MethodSymbol com.sun.tools.javac.code.Type$MethodType int int top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 5
start local 5 7: aload 5
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
l2i
ldc 36880
iand
8: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.flags:()J
l2i
sipush 4096
iand
9: ior
10: istore 7
start local 7 11: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
12: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 7 end local 5 13: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
14: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 22
StackMap locals:
StackMap stack:
15: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 5
start local 5 16: aload 5
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
l2i
ldc 36880
iand
17: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.flags:()J
l2i
sipush 4096
iand
18: ior
19: istore 7
start local 7 20: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
21: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 7 end local 5 22: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
23: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.capturedLocals:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 31
StackMap locals:
StackMap stack:
24: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 5
start local 5 25: aload 5
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
l2i
ldc 36880
iand
26: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.flags:()J
l2i
sipush 4096
iand
27: ior
28: istore 7
start local 7 29: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
30: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 7 end local 5 31: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
32: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
33: iconst_1
ireturn
end local 4 34: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$MethodSymbol com.sun.tools.javac.code.Type$MethodType int
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 35 1 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
1 35 2 ty Lcom/sun/tools/javac/code/Type$MethodType;
2 35 3 allparams I
4 34 4 attrIndex I
7 13 5 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
11 13 7 flags I
16 22 5 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
20 22 7 flags I
25 31 5 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
29 31 7 flags I
MethodParameters:
Name Flags
m
private void writeParamAnnotations(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Symbol$VarSymbol>, com.sun.tools.javac.code.Attribute$RetentionPolicy);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
1: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 14
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.code.Attribute$RetentionPolicy top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 3
start local 3 3: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 5
start local 5 4: aload 3
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 8
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.code.Attribute$RetentionPolicy com.sun.tools.javac.code.Symbol$VarSymbol java.util.Iterator com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 6: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 6
invokevirtual com.sun.tools.javac.code.Types.getRetention:(Lcom/sun/tools/javac/code/Attribute$Compound;)Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
aload 2
if_acmpne 8
7: aload 5
aload 6
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 6 8: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
10: aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 7
goto 13
StackMap locals:
StackMap stack:
11: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 12: aload 0
aload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCompoundAttribute:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
end local 6 13: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
end local 5 end local 3 14: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.code.Attribute$RetentionPolicy top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
15: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 16 1 params Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;
0 16 2 retention Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
3 14 3 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
4 14 5 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$Compound;>;
6 8 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
12 13 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)V
MethodParameters:
Name Flags
params
retention
private void writeParamAnnotations(com.sun.tools.javac.code.Symbol$MethodSymbol, com.sun.tools.javac.code.Attribute$RetentionPolicy);
descriptor: (Lcom/sun/tools/javac/code/Symbol$MethodSymbol;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)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.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
1: aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeParamAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)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/ClassWriter;
0 3 1 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
0 3 2 retention Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
MethodParameters:
Name Flags
m
retention
int writeParameterAttrs(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Symbol$VarSymbol>);
descriptor: (Lcom/sun/tools/javac/util/List;)I
flags: (0x0000)
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 1
ifnull 13
3: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 12
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 4
start local 4 5: aload 4
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 11
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int com.sun.tools.javac.code.Symbol$VarSymbol java.util.Iterator top java.util.Iterator
StackMap stack:
6: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 7: invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy:()[I
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 6
invokevirtual com.sun.tools.javac.code.Types.getRetention:(Lcom/sun/tools/javac/code/Attribute$Compound;)Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 8
2: 9
3: 10
default: 11
}
8: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int com.sun.tools.javac.code.Symbol$VarSymbol java.util.Iterator com.sun.tools.javac.code.Attribute$Compound java.util.Iterator
StackMap stack:
goto 11
9: StackMap locals:
StackMap stack:
iconst_1
istore 3
goto 11
10: StackMap locals:
StackMap stack:
iconst_1
istore 2
end local 6 11: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int com.sun.tools.javac.code.Symbol$VarSymbol java.util.Iterator top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
end local 4 12: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
13: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int int
StackMap stack:
iconst_0
istore 4
start local 4 14: iload 2
ifeq 19
15: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeVisibleParameterAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 16: aload 0
aload 1
getstatic com.sun.tools.javac.code.Attribute$RetentionPolicy.RUNTIME:Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeParamAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)V
17: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
18: iinc 4 1
end local 5 19: StackMap locals: int
StackMap stack:
iload 3
ifeq 24
20: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeInvisibleParameterAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 21: aload 0
aload 1
getstatic com.sun.tools.javac.code.Attribute$RetentionPolicy.CLASS:Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeParamAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;)V
22: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
23: iinc 4 1
end local 5 24: StackMap locals:
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 25 1 vars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;
1 25 2 hasVisible Z
2 25 3 hasInvisible Z
5 12 4 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
7 11 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
14 25 4 attrCount I
16 19 5 attrIndex I
21 24 5 attrIndex I
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;)I
MethodParameters:
Name Flags
vars
int writeJavaAnnotations(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound>);
descriptor: (Lcom/sun/tools/javac/util/List;)I
flags: (0x0000)
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifeq 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 2: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 3
start local 3 3: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 4
start local 4 5: invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy:()[I
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 4
invokevirtual com.sun.tools.javac.code.Types.getRetention:(Lcom/sun/tools/javac/code/Attribute$Compound;)Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 6
2: 7
3: 8
default: 9
}
6: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Attribute$Compound java.util.Iterator
StackMap stack:
goto 9
7: StackMap locals:
StackMap stack:
aload 3
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
goto 9
8: StackMap locals:
StackMap stack:
aload 2
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 4 9: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
10: iconst_0
istore 4
start local 4 11: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
ifeq 20
12: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeVisibleAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 13: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
14: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 7
goto 17
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int int top java.util.Iterator
StackMap stack:
15: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 16: aload 0
aload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCompoundAttribute:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
end local 6 17: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
18: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
19: iinc 4 1
end local 5 20: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int
StackMap stack:
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
ifeq 29
21: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeInvisibleAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 22: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
23: aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 7
goto 26
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int int top java.util.Iterator
StackMap stack:
24: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 25: aload 0
aload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCompoundAttribute:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
end local 6 26: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
27: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
28: iinc 4 1
end local 5 29: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 30 1 attrs Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;
2 30 2 visibles Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$Compound;>;
3 30 3 invisibles Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$Compound;>;
5 9 4 a Lcom/sun/tools/javac/code/Attribute$Compound;
11 30 4 attrCount I
13 20 5 attrIndex I
16 17 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
22 29 5 attrIndex I
25 26 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;)I
MethodParameters:
Name Flags
attrs
int writeTypeAnnotations(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>, );
descriptor: (Lcom/sun/tools/javac/util/List;Z)I
flags: (0x0000)
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifeq 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 3
start local 3 2: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 4
start local 4 3: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 19
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$TypeCompound
astore 5
start local 5 5: aload 5
invokevirtual com.sun.tools.javac.code.Attribute$TypeCompound.hasUnknownPosition:()Z
ifeq 11
6: aload 5
invokevirtual com.sun.tools.javac.code.Attribute$TypeCompound.tryFixPosition:()Z
istore 7
start local 7 7: iload 7
ifne 11
8: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
getstatic com.sun.tools.javac.util.Log$WriterKind.ERROR:Lcom/sun/tools/javac/util/Log$WriterKind;
invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
astore 8
start local 8 9: aload 8
new java.lang.StringBuilder
dup
ldc "ClassWriter: Position UNKNOWN in type annotation: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
10: goto 19
end local 8 end local 7 11: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Attribute$TypeCompound java.util.Iterator
StackMap stack:
aload 5
getfield com.sun.tools.javac.code.Attribute$TypeCompound.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.isLocal:()Z
iload 2
if_icmpeq 13
12: goto 19
13: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.tools.javac.code.Attribute$TypeCompound.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.emitToClassfile:()Z
ifne 15
14: goto 19
15: StackMap locals:
StackMap stack:
invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy:()[I
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 5
invokevirtual com.sun.tools.javac.code.Types.getRetention:(Lcom/sun/tools/javac/code/Attribute$Compound;)Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 16
2: 17
3: 18
default: 19
}
16: StackMap locals:
StackMap stack:
goto 19
17: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
goto 19
18: StackMap locals:
StackMap stack:
aload 3
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 5 19: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
20: iconst_0
istore 5
start local 5 21: aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
ifeq 30
22: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeVisibleTypeAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 6
start local 6 23: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
24: aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 8
goto 27
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int int top java.util.Iterator
StackMap stack:
25: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$TypeCompound
astore 7
start local 7 26: aload 0
aload 7
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeTypeAnnotation:(Lcom/sun/tools/javac/code/Attribute$TypeCompound;)V
end local 7 27: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
28: aload 0
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
29: iinc 5 1
end local 6 30: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int
StackMap stack:
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
ifeq 39
31: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.RuntimeInvisibleTypeAnnotations:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 6
start local 6 32: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
33: aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 8
goto 36
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int int top java.util.Iterator
StackMap stack:
34: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$TypeCompound
astore 7
start local 7 35: aload 0
aload 7
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeTypeAnnotation:(Lcom/sun/tools/javac/code/Attribute$TypeCompound;)V
end local 7 36: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 34
37: aload 0
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
38: iinc 5 1
end local 6 39: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.List int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer int
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 40 1 typeAnnos Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
0 40 2 inCode Z
2 40 3 visibles Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
3 40 4 invisibles Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
5 19 5 tc Lcom/sun/tools/javac/code/Attribute$TypeCompound;
7 11 7 fixed Z
9 11 8 pw Ljava/io/PrintWriter;
21 40 5 attrCount I
23 30 6 attrIndex I
26 27 7 p Lcom/sun/tools/javac/code/Attribute$TypeCompound;
32 39 6 attrIndex I
35 36 7 p Lcom/sun/tools/javac/code/Attribute$TypeCompound;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;Z)I
MethodParameters:
Name Flags
typeAnnos
inCode
void writeCompoundAttribute(com.sun.tools.javac.code.Attribute$Compound);
descriptor: (Lcom/sun/tools/javac/code/Attribute$Compound;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
getfield com.sun.tools.javac.code.Attribute$Compound.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putDescriptor:(Lcom/sun/tools/javac/code/Type;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.Attribute$Compound.values:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 1
getfield com.sun.tools.javac.code.Attribute$Compound.values:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Attribute$Compound top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.Pair
astore 2
start local 2 4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
getfield com.sun.tools.javac.util.Pair.fst:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$MethodSymbol
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
5: aload 2
getfield com.sun.tools.javac.util.Pair.snd:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.awriter:Lcom/sun/tools/javac/jvm/ClassWriter$AttributeWriter;
invokevirtual com.sun.tools.javac.code.Attribute.accept:(Lcom/sun/tools/javac/code/Attribute$Visitor;)V
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 8 1 c Lcom/sun/tools/javac/code/Attribute$Compound;
4 6 2 p Lcom/sun/tools/javac/util/Pair<Lcom/sun/tools/javac/code/Symbol$MethodSymbol;Lcom/sun/tools/javac/code/Attribute;>;
MethodParameters:
Name Flags
c
void writeTypeAnnotation(com.sun.tools.javac.code.Attribute$TypeCompound);
descriptor: (Lcom/sun/tools/javac/code/Attribute$TypeCompound;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield com.sun.tools.javac.code.Attribute$TypeCompound.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writePosition:(Lcom/sun/tools/javac/code/TypeAnnotationPosition;)V
1: aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCompoundAttribute:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 3 1 c Lcom/sun/tools/javac/code/Attribute$TypeCompound;
MethodParameters:
Name Flags
c
void writePosition(com.sun.tools.javac.code.TypeAnnotationPosition);
descriptor: (Lcom/sun/tools/javac/code/TypeAnnotationPosition;)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.targetTypeValue:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
1: invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$TargetType:()[I
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
iaload
tableswitch { // 1 - 23
1: 16
2: 16
3: 21
4: 18
5: 18
6: 30
7: 30
8: 15
9: 25
10: 23
11: 4
12: 4
13: 13
14: 2
15: 2
16: 2
17: 2
18: 27
19: 27
20: 27
21: 27
22: 27
23: 31
default: 32
}
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.offset:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: goto 33
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarOffset:[I
arraylength
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
5: iconst_0
istore 2
start local 2 6: goto 11
7: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarOffset:[I
iload 2
iaload
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
8: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarLength:[I
iload 2
iaload
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarIndex:[I
iload 2
iaload
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
10: iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.lvarOffset:[I
arraylength
if_icmplt 7
end local 2 12: goto 33
13: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
invokevirtual com.sun.tools.javac.code.TypeAnnotationPosition.getExceptionIndex:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
14: goto 33
15: StackMap locals:
StackMap stack:
goto 33
16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.parameter_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
17: goto 33
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.parameter_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
19: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.bound_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
20: goto 33
21: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
22: goto 33
23: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
24: goto 33
25: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.parameter_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
26: goto 33
27: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.offset:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
28: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.type_index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
29: goto 33
30: StackMap locals:
StackMap stack:
goto 33
31: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "jvm.ClassWriter: UNKNOWN target type should never occur!"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
32: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "jvm.ClassWriter: Unknown target type for position: "
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;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
33: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.location:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
34: aload 1
getfield com.sun.tools.javac.code.TypeAnnotationPosition.location:Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.code.TypeAnnotationPosition.getBinaryFromTypePath:(Ljava/util/List;)Lcom/sun/tools/javac/util/List;
astore 2
start local 2 35: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 38
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.TypeAnnotationPosition java.util.List top java.util.Iterator
StackMap stack:
36: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 3
start local 3 37: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 3
i2b
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
end local 3 38: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
end local 2 39: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 40 1 p Lcom/sun/tools/javac/code/TypeAnnotationPosition;
6 12 2 i I
35 39 2 loc Ljava/util/List<Ljava/lang/Integer;>;
37 38 3 i I
MethodParameters:
Name Flags
p
int writeModuleAttribute(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=11, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
astore 2
start local 2 1: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Module:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 3
start local 3 2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:Ljava/util/Set;
invokestatic com.sun.tools.javac.code.Symbol$ModuleFlags.value:(Ljava/util/Set;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
ifnull 5
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
goto 6
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int
StackMap stack: com.sun.tools.javac.util.ByteBuffer
5: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
6: invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
7: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 4
start local 4 8: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
9: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$RequiresDirective
astore 5
start local 5 10: aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.flags:Ljava/util/Set;
getstatic com.sun.tools.javac.code.Directive$RequiresFlag.EXTRA:Lcom/sun/tools/javac/code/Directive$RequiresFlag;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 12
11: aload 4
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 5 12: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
13: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
14: aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 6
goto 21
StackMap locals:
StackMap stack:
15: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$RequiresDirective
astore 5
start local 5 16: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
17: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.flags:Ljava/util/Set;
invokestatic com.sun.tools.javac.code.Directive$RequiresFlag.value:(Ljava/util/Set;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
18: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
ifnull 19
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
goto 20
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Directive$RequiresDirective java.util.Iterator
StackMap stack: com.sun.tools.javac.util.ByteBuffer
19: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Directive$RequiresDirective java.util.Iterator
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
20: invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 21: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
22: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
astore 5
start local 5 23: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
24: aload 5
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 36
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
25: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$ExportsDirective
astore 6
start local 6 26: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putPackage:(Lcom/sun/tools/javac/code/Symbol$PackageSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
27: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.flags:Ljava/util/Set;
invokestatic com.sun.tools.javac.code.Directive$ExportsFlag.value:(Ljava/util/Set;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
28: aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
ifnonnull 31
29: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
30: goto 36
31: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.code.Directive$ExportsDirective java.util.Iterator
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
32: aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 35
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.code.Directive$ExportsDirective java.util.Iterator top java.util.Iterator
StackMap stack:
33: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
astore 8
start local 8 34: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 8
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 8 35: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
end local 6 36: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
37: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.opens:Lcom/sun/tools/javac/util/List;
astore 6
start local 6 38: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 6
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
39: aload 6
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 51
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
40: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$OpensDirective
astore 7
start local 7 41: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putPackage:(Lcom/sun/tools/javac/code/Symbol$PackageSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
42: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.flags:Ljava/util/Set;
invokestatic com.sun.tools.javac.code.Directive$OpensFlag.value:(Ljava/util/Set;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
43: aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.modules:Lcom/sun/tools/javac/util/List;
ifnonnull 46
44: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
45: goto 51
46: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.code.Directive$OpensDirective java.util.Iterator
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.modules:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
47: aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.modules:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 50
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.code.Directive$OpensDirective java.util.Iterator top java.util.Iterator
StackMap stack:
48: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
astore 9
start local 9 49: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 9
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 9 50: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 48
end local 7 51: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
52: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.uses:Lcom/sun/tools/javac/util/List;
astore 7
start local 7 53: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 7
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
54: aload 7
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 57
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
55: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$UsesDirective
astore 8
start local 8 56: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 8
getfield com.sun.tools.javac.code.Directive$UsesDirective.service:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 8 57: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 55
58: new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
astore 8
start local 8 59: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.provides:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 62
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Map top java.util.Iterator
StackMap stack:
60: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Directive$ProvidesDirective
astore 9
start local 9 61: aload 8
aload 9
getfield com.sun.tools.javac.code.Directive$ProvidesDirective.service:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/sun/tools/javac/jvm/ClassWriter.lambda$0(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set; (6)
(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set;
invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.Set
aload 9
getfield com.sun.tools.javac.code.Directive$ProvidesDirective.impls:Lcom/sun/tools/javac/util/List;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 9 62: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 60
63: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 8
invokeinterface java.util.Map.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
64: aload 8
aload 0
invokedynamic accept(Lcom/sun/tools/javac/jvm/ClassWriter;)Ljava/util/function/BiConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)V
com/sun/tools/javac/jvm/ClassWriter.lambda$1(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set;)V (7)
(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set;)V
invokeinterface java.util.Map.forEach:(Ljava/util/function/BiConsumer;)V
65: aload 0
iload 3
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
66: iconst_1
ireturn
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 67 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 67 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
1 67 2 m Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
2 67 3 alenIdx I
8 67 4 requires Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Directive$RequiresDirective;>;
10 12 5 r Lcom/sun/tools/javac/code/Directive$RequiresDirective;
16 21 5 r Lcom/sun/tools/javac/code/Directive$RequiresDirective;
23 67 5 exports Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;
26 36 6 e Lcom/sun/tools/javac/code/Directive$ExportsDirective;
34 35 8 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
38 67 6 opens Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Directive$OpensDirective;>;
41 51 7 o Lcom/sun/tools/javac/code/Directive$OpensDirective;
49 50 9 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
53 67 7 uses Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Directive$UsesDirective;>;
56 57 8 s Lcom/sun/tools/javac/code/Directive$UsesDirective;
59 67 8 mergedProvides Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;>;
61 62 9 p Lcom/sun/tools/javac/code/Directive$ProvidesDirective;
MethodParameters:
Name Flags
c
void writeInnerClasses();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=6, args_size=1
start local 0 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.InnerClasses:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.innerClasses:Ljava/util/LinkedHashSet;
invokevirtual java.util.LinkedHashSet.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.innerClasses:Ljava/util/LinkedHashSet;
invokevirtual java.util.LinkedHashSet.iterator:()Ljava/util/Iterator;
astore 3
goto 22
StackMap locals: com.sun.tools.javac.jvm.ClassWriter int top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 2
start local 2 4: aload 2
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.markAbstractIfNeeded:(Lcom/sun/tools/javac/code/Types;)V
5: aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flags_field:J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.adjustFlags:(J)I
i2c
istore 4
start local 4 6: iload 4
sipush 512
iand
ifeq 7
iload 4
sipush 1024
ior
i2c
istore 4
7: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Iterator int
StackMap stack:
iload 4
sipush -2049
iand
i2c
istore 4
8: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpInnerClassModifiers:Z
ifeq 12
9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
getstatic com.sun.tools.javac.util.Log$WriterKind.ERROR:Lcom/sun/tools/javac/util/Log$WriterKind;
invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
astore 5
start local 5 10: aload 5
new java.lang.StringBuilder
dup
ldc "INNERCLASS "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
11: aload 5
new java.lang.StringBuilder
dup
ldc "---"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
i2l
invokestatic com.sun.tools.javac.jvm.ClassWriter.flagNames:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 5 12: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
13: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
14: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 15
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.isEmpty:()Z
ifne 15
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
goto 16
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
15: iconst_0
16: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Iterator int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
17: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
18: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.isEmpty:()Z
ifne 19
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
goto 20
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
19: iconst_0
20: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Iterator int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
21: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 4
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 4 end local 2 22: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
23: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
24: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
1 25 1 alenIdx I
4 22 2 inner Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
6 22 4 flags C
10 12 5 pw Ljava/io/PrintWriter;
int writeRecordAttribute(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Record:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
pop
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getRecordComponents:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getRecordComponents:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol int top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 3
start local 3 5: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 3
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
6: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 3
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putDescriptor:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
7: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 5
start local 5 8: iconst_0
istore 6
start local 6 9: iload 6
aload 0
aload 3
iconst_1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs:(Lcom/sun/tools/javac/code/Symbol;Z)I
iadd
istore 6
10: aload 0
iload 5
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
end local 6 end local 5 end local 3 11: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
12: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
13: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 14 1 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
1 14 2 alenIdx I
5 11 3 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
8 11 5 acountIdx I
9 11 6 acount I
MethodParameters:
Name Flags
csym
int writeNestMembersIfNeeded(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 0
aload 1
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.listNested:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/ListBuffer;)V
2: new java.util.LinkedHashSet
dup
aload 2
invokespecial java.util.LinkedHashSet.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 3: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 12
aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifne 12
4: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.NestMembers:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 4
start local 4 5: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 3
invokeinterface java.util.Set.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
6: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 9
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.util.ListBuffer java.util.Set int top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 5
start local 5 8: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 9: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
11: iconst_1
ireturn
end local 4 12: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.util.ListBuffer java.util.Set
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 13 1 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
1 13 2 nested Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
3 13 3 nestedUnique Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
5 12 4 alenIdx I
8 9 5 s Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
MethodParameters:
Name Flags
csym
int writeNestHostIfNeeded(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 5
1: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.NestHost:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 2
start local 2 2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
4: iconst_1
ireturn
end local 2 5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 6 1 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
2 5 2 alenIdx I
MethodParameters:
Name Flags
csym
private void listNested(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.util.ListBuffer<com.sun.tools.javac.code.Symbol$ClassSymbol>);
descriptor: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/ListBuffer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 1
return
1: StackMap locals:
StackMap stack:
aload 1
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 3
start local 3 2: aload 3
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 4
3: aload 2
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals: com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
aload 3
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
ifnull 9
5: aload 1
invokevirtual com.sun.tools.javac.code.Symbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
invokevirtual com.sun.tools.javac.code.Scope$WriteableScope.getSymbols:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 8
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 4
start local 4 7: aload 0
aload 4
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.listNested:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/ListBuffer;)V
end local 4 8: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
9: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
aload 3
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.trans_local:Lcom/sun/tools/javac/util/List;
ifnull 14
10: aload 3
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.trans_local:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
StackMap stack:
11: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 4
start local 4 12: aload 0
aload 4
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.listNested:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/ListBuffer;)V
end local 4 13: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
return
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/ClassWriter;
0 15 1 sym Lcom/sun/tools/javac/code/Symbol;
0 15 2 seen Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
2 15 3 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
7 8 4 s Lcom/sun/tools/javac/code/Symbol;
12 13 4 s Lcom/sun/tools/javac/code/Symbol;
Signature: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;)V
MethodParameters:
Name Flags
sym
seen
int writePermittedSubclassesIfNeeded(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0000)
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.permitted:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 9
1: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.PermittedSubclasses:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 2
start local 2 2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.permitted:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.permitted:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol int top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 3
start local 3 5: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 3
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
iload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
8: iconst_1
ireturn
end local 2 9: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 10 1 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
2 9 2 alenIdx I
5 6 3 c Lcom/sun/tools/javac/code/Symbol;
MethodParameters:
Name Flags
csym
void writeBootstrapMethods();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=9, args_size=1
start local 0 0: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.BootstrapMethods:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 12
StackMap locals: com.sun.tools.javac.jvm.ClassWriter int top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.PoolConstant$Dynamic$BsmKey
astore 2
start local 2 4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
getfield com.sun.tools.javac.jvm.PoolConstant$Dynamic$BsmKey.bsm:Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putConstant:(Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
5: aload 2
getfield com.sun.tools.javac.jvm.PoolConstant$Dynamic$BsmKey.staticArgs:[Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;
astore 4
start local 4 6: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
arraylength
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
7: aload 4
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 11
StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.jvm.PoolConstant$Dynamic$BsmKey java.util.Iterator com.sun.tools.javac.jvm.PoolConstant$LoadableConstant[] top int int com.sun.tools.javac.jvm.PoolConstant$LoadableConstant[]
StackMap stack:
8: aload 8
iload 6
aaload
astore 5
start local 5 9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 5
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putConstant:(Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 10: iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
iload 7
if_icmplt 8
end local 4 end local 2 12: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
13: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
14: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
1 15 1 alenIdx I
4 12 2 bsmKey Lcom/sun/tools/javac/jvm/PoolConstant$Dynamic$BsmKey;
6 12 4 uniqueArgs [Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;
9 10 5 arg Lcom/sun/tools/javac/jvm/PoolConstant$LoadableConstant;
void writeField(com.sun.tools.javac.code.Symbol$VarSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
flags: (0x0000)
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.adjustFlags:(J)I
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 2
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpFieldModifiers:Z
ifeq 6
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
getstatic com.sun.tools.javac.util.Log$WriterKind.ERROR:Lcom/sun/tools/javac/util/Log$WriterKind;
invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
astore 3
start local 3 4: aload 3
new java.lang.StringBuilder
dup
ldc "FIELD "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
5: aload 3
new java.lang.StringBuilder
dup
ldc "---"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
invokestatic com.sun.tools.javac.jvm.ClassWriter.flagNames:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 3 6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
7: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putDescriptor:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
8: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 3
start local 3 9: iconst_0
istore 4
start local 4 10: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getConstValue:()Ljava/lang/Object;
ifnull 15
11: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.ConstantValue:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 12: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getConstValue:()Ljava/lang/Object;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putConstant:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
13: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
14: iinc 4 1
end local 5 15: StackMap locals: int int
StackMap stack:
iload 4
aload 0
aload 1
iconst_0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs:(Lcom/sun/tools/javac/code/Symbol;Z)I
iadd
istore 4
16: iload 4
aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeExtraAttributes:(Lcom/sun/tools/javac/code/Symbol;)I
iadd
istore 4
17: aload 0
iload 3
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
18: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 19 1 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
1 19 2 flags I
4 6 3 pw Ljava/io/PrintWriter;
9 19 3 acountIdx I
10 19 4 acount I
12 15 5 alenIdx I
MethodParameters:
Name Flags
v
void writeMethod(com.sun.tools.javac.code.Symbol$MethodSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$MethodSymbol;)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.flags:()J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.adjustFlags:(J)I
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 2
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpMethodModifiers:Z
ifeq 6
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
getstatic com.sun.tools.javac.util.Log$WriterKind.ERROR:Lcom/sun/tools/javac/util/Log$WriterKind;
invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
astore 3
start local 3 4: aload 3
new java.lang.StringBuilder
dup
ldc "METHOD "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
5: aload 3
new java.lang.StringBuilder
dup
ldc "---"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.flags:()J
invokestatic com.sun.tools.javac.jvm.ClassWriter.flagNames:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 3 6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
7: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putDescriptor:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
8: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 3
start local 3 9: iconst_0
istore 4
start local 4 10: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.code:Lcom/sun/tools/javac/jvm/Code;
ifnull 16
11: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Code:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 12: aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.code:Lcom/sun/tools/javac/jvm/Code;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCode:(Lcom/sun/tools/javac/jvm/Code;)V
13: aload 1
aconst_null
putfield com.sun.tools.javac.code.Symbol$MethodSymbol.code:Lcom/sun/tools/javac/jvm/Code;
14: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
15: iinc 4 1
end local 5 16: StackMap locals: int int
StackMap stack:
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.getThrownTypes:()Lcom/sun/tools/javac/util/List;
astore 5
start local 5 17: aload 5
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 27
18: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Exceptions:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 6
start local 6 19: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
20: aload 5
astore 7
start local 7 21: goto 24
22: StackMap locals: com.sun.tools.javac.util.List int com.sun.tools.javac.util.List
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 7
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Type;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
23: aload 7
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 7
StackMap locals:
StackMap stack:
24: aload 7
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 22
end local 7 25: aload 0
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
26: iinc 4 1
end local 6 27: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.defaultValue:Lcom/sun/tools/javac/code/Attribute;
ifnull 32
28: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.AnnotationDefault:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 6
start local 6 29: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.defaultValue:Lcom/sun/tools/javac/code/Attribute;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.awriter:Lcom/sun/tools/javac/jvm/ClassWriter$AttributeWriter;
invokevirtual com.sun.tools.javac.code.Attribute.accept:(Lcom/sun/tools/javac/code/Attribute$Visitor;)V
30: aload 0
iload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
31: iinc 4 1
end local 6 32: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
invokevirtual com.sun.tools.javac.jvm.Target.hasMethodParameters:()Z
ifeq 35
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.options:Lcom/sun/tools/javac/util/Options;
getstatic com.sun.tools.javac.main.Option.PARAMETERS:Lcom/sun/tools/javac/main/Option;
invokevirtual com.sun.tools.javac.util.Options.isSet:(Lcom/sun/tools/javac/main/Option;)Z
ifne 33
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isConstructor:()Z
ifeq 35
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.flags_field:J
ldc 2305843009213693952
land
lconst_0
lcmp
ifeq 35
33: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isLambdaMethod:()Z
ifne 35
34: iload 4
aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMethodParametersAttr:(Lcom/sun/tools/javac/code/Symbol$MethodSymbol;)I
iadd
istore 4
35: StackMap locals:
StackMap stack:
iload 4
aload 0
aload 1
iconst_0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs:(Lcom/sun/tools/javac/code/Symbol;Z)I
iadd
istore 4
36: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isLambdaMethod:()Z
ifne 38
37: iload 4
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeParameterAttrs:(Lcom/sun/tools/javac/util/List;)I
iadd
istore 4
38: StackMap locals:
StackMap stack:
iload 4
aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeExtraAttributes:(Lcom/sun/tools/javac/code/Symbol;)I
iadd
istore 4
39: aload 0
iload 3
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
40: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 41 1 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
1 41 2 flags I
4 6 3 pw Ljava/io/PrintWriter;
9 41 3 acountIdx I
10 41 4 acount I
12 16 5 alenIdx I
17 41 5 thrown Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
19 27 6 alenIdx I
21 25 7 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
29 32 6 alenIdx I
MethodParameters:
Name Flags
m
void writeCode(com.sun.tools.javac.jvm.Code);
descriptor: (Lcom/sun/tools/javac/jvm/Code;)V
flags: (0x0000)
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.max_stack:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.max_locals:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.cp:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendInt:(I)V
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.code:[B
iconst_0
aload 1
getfield com.sun.tools.javac.jvm.Code.cp:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendBytes:([BII)V
4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.catchInfo:Lcom/sun/tools/javac/util/ListBuffer;
invokevirtual com.sun.tools.javac.util.ListBuffer.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
5: aload 1
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 2
start local 2 6: goto 13
7: StackMap locals: com.sun.tools.javac.util.List
StackMap stack:
iconst_0
istore 3
start local 3 8: goto 11
9: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
iload 3
caload
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
10: iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
arraylength
if_icmplt 9
end local 3 12: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
13: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 7
end local 2 14: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 2
start local 2 15: iconst_0
istore 3
start local 3 16: aload 1
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 30
17: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.LineNumberTable:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 4
start local 4 18: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
19: aload 1
getfield com.sun.tools.javac.jvm.Code.lineInfo:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.reverse:()Lcom/sun/tools/javac/util/List;
astore 5
start local 5 20: goto 27
21: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int com.sun.tools.javac.util.List
StackMap stack:
iconst_0
istore 6
start local 6 22: goto 25
23: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
iload 6
caload
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
24: iinc 6 1
StackMap locals:
StackMap stack:
25: iload 6
aload 5
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast char[]
arraylength
if_icmplt 23
end local 6 26: aload 5
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 5
27: StackMap locals:
StackMap stack:
aload 5
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 21
end local 5 28: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
29: iinc 3 1
end local 4 30: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.genCrt:Z
ifeq 38
aload 1
getfield com.sun.tools.javac.jvm.Code.crt:Lcom/sun/tools/javac/jvm/CRTable;
ifnull 38
31: aload 1
getfield com.sun.tools.javac.jvm.Code.crt:Lcom/sun/tools/javac/jvm/CRTable;
astore 4
start local 4 32: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.CharacterRangeTable:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 33: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 6
start local 6 34: aload 4
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
getfield com.sun.tools.javac.jvm.Code.lineMap:Lcom/sun/tools/javac/util/Position$LineMap;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
invokevirtual com.sun.tools.javac.jvm.CRTable.writeCRT:(Lcom/sun/tools/javac/util/ByteBuffer;Lcom/sun/tools/javac/util/Position$LineMap;Lcom/sun/tools/javac/util/Log;)I
istore 7
start local 7 35: aload 0
iload 6
iload 7
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
36: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
37: iinc 3 1
end local 7 end local 6 end local 5 end local 4 38: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.varDebugInfo:Z
ifeq 94
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
ifle 94
39: iconst_0
istore 4
start local 4 40: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.LocalVariableTable:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
start local 5 41: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
invokevirtual com.sun.tools.javac.jvm.Code.getLVTSize:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
42: iconst_0
istore 6
start local 6 43: goto 65
44: StackMap locals: int int int
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 6
aaload
astore 7
start local 7 45: aload 7
getfield com.sun.tools.javac.jvm.Code$LocalVar.aliveRanges:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 63
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int com.sun.tools.javac.jvm.Code$LocalVar top java.util.Iterator
StackMap stack:
46: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar$Range
astore 8
start local 8 47: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
iflt 49
48: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
aload 1
getfield com.sun.tools.javac.jvm.Code.cp:I
if_icmpgt 49
iconst_1
goto 50
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int com.sun.tools.javac.jvm.Code$LocalVar com.sun.tools.javac.jvm.Code$LocalVar$Range java.util.Iterator
StackMap stack:
49: iconst_0
50: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
51: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
52: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
ifle 54
53: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
iadd
aload 1
getfield com.sun.tools.javac.jvm.Code.cp:I
if_icmpgt 54
iconst_1
goto 55
StackMap locals:
StackMap stack:
54: iconst_0
55: StackMap locals:
StackMap stack: int
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
56: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
57: aload 7
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
astore 10
start local 10 58: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 10
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
59: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 10
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putDescriptor:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
60: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 7
getfield com.sun.tools.javac.jvm.Code$LocalVar.reg:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
61: aload 0
aload 7
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.ClassWriter.needsLocalVariableTypeEntry:(Lcom/sun/tools/javac/code/Type;)Z
ifeq 63
62: iinc 4 1
end local 10 end local 8 63: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int com.sun.tools.javac.jvm.Code$LocalVar top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 46
end local 7 64: iinc 6 1
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int
StackMap stack:
65: iload 6
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 44
end local 6 66: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
67: iinc 3 1
68: iload 4
ifle 94
69: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.LocalVariableTypeTable:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
70: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 4
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
71: iconst_0
istore 6
start local 6 72: iconst_0
istore 7
start local 7 73: goto 88
74: StackMap locals: int
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.varBuffer:[Lcom/sun/tools/javac/jvm/Code$LocalVar;
iload 7
aaload
astore 8
start local 8 75: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
astore 9
start local 9 76: aload 0
aload 9
getfield com.sun.tools.javac.code.Symbol$VarSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.needsLocalVariableTypeEntry:(Lcom/sun/tools/javac/code/Type;)Z
ifne 78
77: goto 87
78: StackMap locals: com.sun.tools.javac.jvm.Code$LocalVar com.sun.tools.javac.code.Symbol$VarSymbol
StackMap stack:
aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar.aliveRanges:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 86
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int int com.sun.tools.javac.jvm.Code$LocalVar com.sun.tools.javac.code.Symbol$VarSymbol top java.util.Iterator
StackMap stack:
79: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar$Range
astore 10
start local 10 80: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 10
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.start_pc:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
81: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 10
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
82: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 9
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
83: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 9
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putSignature:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
84: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar.reg:C
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
85: iinc 6 1
end local 10 86: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 79
end local 9 end local 8 87: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int int
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
88: iload 7
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 74
end local 7 89: iload 6
iload 4
if_icmpne 90
iconst_1
goto 91
StackMap locals:
StackMap stack:
90: iconst_0
StackMap locals:
StackMap stack: int
91: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
92: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
93: iinc 3 1
end local 6 end local 5 end local 4 94: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
ifle 100
95: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 96
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Stack map for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
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
96: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMap:Lcom/sun/tools/javac/jvm/Code$StackMapFormat;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
invokevirtual com.sun.tools.javac.jvm.Code$StackMapFormat.getAttributeName:(Lcom/sun/tools/javac/util/Names;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 4
start local 4 97: aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeStackMap:(Lcom/sun/tools/javac/jvm/Code;)V
98: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
99: iinc 3 1
end local 4 100: StackMap locals:
StackMap stack:
iload 3
aload 0
aload 1
getfield com.sun.tools.javac.jvm.Code.meth:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
iconst_1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeTypeAnnotations:(Lcom/sun/tools/javac/util/List;Z)I
iadd
istore 3
101: aload 0
iload 2
iload 3
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
102: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 103 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 103 1 code Lcom/sun/tools/javac/jvm/Code;
6 14 2 l Lcom/sun/tools/javac/util/List<[C>;
8 12 3 i I
15 103 2 acountIdx I
16 103 3 acount I
18 30 4 alenIdx I
20 28 5 l Lcom/sun/tools/javac/util/List<[C>;
22 26 6 i I
32 38 4 crt Lcom/sun/tools/javac/jvm/CRTable;
33 38 5 alenIdx I
34 38 6 crtIdx I
35 38 7 crtEntries I
40 94 4 nGenericVars I
41 94 5 alenIdx I
43 66 6 i I
45 64 7 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
47 63 8 r Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
58 63 10 sym Lcom/sun/tools/javac/code/Symbol$VarSymbol;
72 94 6 count I
73 89 7 i I
75 87 8 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
76 87 9 sym Lcom/sun/tools/javac/code/Symbol$VarSymbol;
80 86 10 r Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
97 100 4 alenIdx I
MethodParameters:
Name Flags
code
private boolean needsLocalVariableTypeEntry(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Z
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.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 1
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.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifne 3
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.check:Lcom/sun/tools/javac/comp/Check;
aload 1
invokevirtual com.sun.tools.javac.comp.Check.checkDenotable:(Lcom/sun/tools/javac/code/Type;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 4 1 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
void writeStackMap(com.sun.tools.javac.jvm.Code);
descriptor: (Lcom/sun/tools/javac/jvm/Code;)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 2
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " nframes = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 2
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
3: invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$jvm$Code$StackMapFormat:()[I
aload 1
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: 4
3: 46
default: 56
}
4: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 5: goto 44
6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 7
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
7: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
iload 3
aaload
astore 4
start local 4 8: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 9
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " pc="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
9: StackMap locals: com.sun.tools.javac.jvm.Code$StackMapFrame
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.pc:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
10: iconst_0
istore 5
start local 5 11: iconst_0
istore 6
start local 6 12: goto 15
13: StackMap locals: int int
StackMap stack:
iinc 5 1
14: iload 6
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 6
aaload
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 6
15: StackMap locals:
StackMap stack:
iload 6
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
arraylength
if_icmplt 13
end local 6 16: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 19
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " nlocals="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
17: iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
19: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 5
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
20: iconst_0
istore 6
start local 6 21: goto 25
22: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 23
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " local["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
23: StackMap locals:
StackMap stack:
aload 0
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 6
aaload
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeStackMapType:(Lcom/sun/tools/javac/code/Type;)V
24: iload 6
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
iload 6
aaload
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 6
25: StackMap locals:
StackMap stack:
iload 6
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.locals:[Lcom/sun/tools/javac/code/Type;
arraylength
if_icmplt 22
end local 6 26: iconst_0
istore 6
start local 6 27: iconst_0
istore 7
start local 7 28: goto 31
29: StackMap locals: int
StackMap stack:
iinc 6 1
30: iload 7
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 7
31: StackMap locals:
StackMap stack:
iload 7
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
arraylength
if_icmplt 29
end local 7 32: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 35
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " nstack="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
33: iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 6
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
36: iconst_0
istore 7
start local 7 37: goto 41
38: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 39
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " stack["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
39: StackMap locals:
StackMap stack:
aload 0
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeStackMapType:(Lcom/sun/tools/javac/code/Type;)V
40: iload 7
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
iload 7
aaload
invokestatic com.sun.tools.javac.jvm.Code.width:(Lcom/sun/tools/javac/code/Type;)I
iadd
istore 7
41: StackMap locals:
StackMap stack:
iload 7
aload 4
getfield com.sun.tools.javac.jvm.Code$StackMapFrame.stack:[Lcom/sun/tools/javac/code/Type;
arraylength
if_icmplt 38
end local 7 42: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 43
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
end local 6 end local 5 end local 4 43: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
44: iload 3
iload 2
if_icmplt 6
end local 3 45: goto 57
46: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapBuffer:[Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
47: iconst_0
istore 3
start local 3 48: goto 54
49: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 50
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
50: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapTableBuffer:[Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
iload 3
aaload
astore 4
start local 4 51: aload 4
aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame.write:(Lcom/sun/tools/javac/jvm/ClassWriter;)V
52: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 53
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
end local 4 53: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
54: iload 3
iload 2
if_icmplt 49
end local 3 55: goto 57
56: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Unexpected stackmap format value"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
57: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 58 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 58 1 code Lcom/sun/tools/javac/jvm/Code;
1 58 2 nframes I
5 45 3 i I
8 43 4 frame Lcom/sun/tools/javac/jvm/Code$StackMapFrame;
11 43 5 localCount I
12 16 6 j I
21 26 6 j I
27 43 6 stackCount I
28 32 7 j I
37 42 7 j I
48 55 3 i I
51 53 4 frame Lcom/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame;
MethodParameters:
Name Flags
code
void writeStackMapType(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 4
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 2
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "empty"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
3: goto 33
4: StackMap locals:
StackMap stack:
invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$TypeTag:()[I
aload 1
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: 5
2: 5
3: 5
4: 14
5: 8
6: 5
7: 11
8: 5
9: 32
10: 20
11: 20
12: 32
13: 32
14: 32
15: 20
16: 32
17: 32
18: 32
19: 17
20: 32
21: 32
22: 32
23: 32
24: 24
25: 27
default: 32
}
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 6
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "int"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_1
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
7: goto 33
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 9
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "float"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_2
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
10: goto 33
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 12
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "double"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_3
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
13: goto 33
14: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 15
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "long"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_4
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
16: goto 33
17: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 18
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "null"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_5
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
19: goto 33
20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 21
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "object("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
22: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 1
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.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Type;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
23: goto 33
24: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 25
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "uninit_this"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 6
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
26: goto 33
27: StackMap locals:
StackMap stack:
aload 1
checkcast com.sun.tools.javac.jvm.UninitializedType
astore 2
start local 2 28: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 8
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
29: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 30
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "uninit_object@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
getfield com.sun.tools.javac.jvm.UninitializedType.offset:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
30: StackMap locals: com.sun.tools.javac.jvm.UninitializedType
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
getfield com.sun.tools.javac.jvm.UninitializedType.offset:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 2 31: goto 33
32: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
33: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 34 1 t Lcom/sun/tools/javac/code/Type;
28 31 2 uninitType Lcom/sun/tools/javac/jvm/UninitializedType;
MethodParameters:
Name Flags
t
void writeFields(com.sun.tools.javac.code.Scope);
descriptor: (Lcom/sun/tools/javac/code/Scope;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
astore 2
start local 2 1: aload 1
getstatic com.sun.tools.javac.code.Scope$LookupKind.NON_RECURSIVE:Lcom/sun/tools/javac/code/Scope$LookupKind;
invokevirtual com.sun.tools.javac.code.Scope.getSymbols:(Lcom/sun/tools/javac/code/Scope$LookupKind;)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Scope com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 3
start local 3 3: aload 3
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 4
aload 2
aload 3
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
astore 2
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: goto 8
6: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Scope com.sun.tools.javac.util.List
StackMap stack:
aload 0
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeField:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
7: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 6
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 10 1 s Lcom/sun/tools/javac/code/Scope;
1 10 2 vars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;
3 4 3 sym Lcom/sun/tools/javac/code/Symbol;
MethodParameters:
Name Flags
s
void writeMethods(com.sun.tools.javac.code.Scope);
descriptor: (Lcom/sun/tools/javac/code/Scope;)V
flags: (0x0000)
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
astore 2
start local 2 1: aload 1
getstatic com.sun.tools.javac.code.Scope$LookupKind.NON_RECURSIVE:Lcom/sun/tools/javac/code/Scope$LookupKind;
invokevirtual com.sun.tools.javac.code.Scope.getSymbols:(Lcom/sun/tools/javac/code/Scope$LookupKind;)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Scope com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 3
start local 3 3: aload 3
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 5
aload 3
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc 137438953472
land
lconst_0
lcmp
ifne 5
4: aload 2
aload 3
checkcast com.sun.tools.javac.code.Symbol$MethodSymbol
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 2
6: goto 9
7: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Scope com.sun.tools.javac.util.List
StackMap stack:
aload 0
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$MethodSymbol
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMethod:(Lcom/sun/tools/javac/code/Symbol$MethodSymbol;)V
8: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
9: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 7
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/ClassWriter;
0 11 1 s Lcom/sun/tools/javac/code/Scope;
1 11 2 methods Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$MethodSymbol;>;
3 5 3 sym Lcom/sun/tools/javac/code/Symbol;
MethodParameters:
Name Flags
s
public javax.tools.JavaFileObject writeClass(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljavax/tools/JavaFileObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 1
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
goto 2
StackMap locals:
StackMap stack:
1: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flatname:Lcom/sun/tools/javac/util/Name;
StackMap locals:
StackMap stack: com.sun.tools.javac.util.Name
2: invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.multiModuleMode:Z
ifeq 9
4: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 5
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
goto 6
StackMap locals: java.lang.String
StackMap stack:
5: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.packge:()Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
getfield com.sun.tools.javac.code.Symbol$PackageSymbol.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
StackMap locals:
StackMap stack: com.sun.tools.javac.code.Symbol$ModuleSymbol
6: astore 4
start local 4 7: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
aload 4
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
astore 3
end local 4 start local 3 8: goto 10
end local 3 9: StackMap locals:
StackMap stack:
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
astore 3
start local 3 10: StackMap locals: javax.tools.JavaFileManager$Location
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.fileManager:Ljavax/tools/JavaFileManager;
aload 3
11: aload 2
12: getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
13: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
14: invokeinterface javax.tools.JavaFileManager.getJavaFileForOutput:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;Ljavax/tools/FileObject;)Ljavax/tools/JavaFileObject;
15: astore 4
start local 4 16: aload 4
invokeinterface javax.tools.JavaFileObject.openOutputStream:()Ljava/io/OutputStream;
astore 5
start local 5 17: aload 0
aload 5
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeClassFile:(Ljava/io/OutputStream;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
18: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.verbose:Z
ifeq 20
19: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
ldc "wrote.file"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
invokeinterface javax.tools.JavaFileObject.getName:()Ljava/lang/String;
aastore
invokevirtual com.sun.tools.javac.util.Log.printVerbose:(Ljava/lang/String;[Ljava/lang/Object;)V
20: StackMap locals: javax.tools.JavaFileObject java.io.OutputStream
StackMap stack:
aload 5
invokevirtual java.io.OutputStream.close:()V
21: aconst_null
astore 5
22: goto 35
StackMap locals:
StackMap stack: com.sun.tools.javac.code.Types$SignatureGenerator$InvalidSignatureException
23: astore 6
start local 6 24: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
aload 1
aload 1
aload 6
invokevirtual com.sun.tools.javac.code.Types$SignatureGenerator$InvalidSignatureException.type:()Lcom/sun/tools/javac/code/Type;
invokestatic com.sun.tools.javac.resources.CompilerProperties$Fragments.IllegalSignature:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.CannotGenerateClass:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
end local 6 25: aload 5
ifnull 39
26: aload 5
invokevirtual java.io.OutputStream.close:()V
27: aload 4
invokeinterface javax.tools.JavaFileObject.delete:()Z
pop
28: aconst_null
astore 4
goto 39
29: StackMap locals:
StackMap stack: java.lang.Throwable
astore 7
30: aload 5
ifnull 34
31: aload 5
invokevirtual java.io.OutputStream.close:()V
32: aload 4
invokeinterface javax.tools.JavaFileObject.delete:()Z
pop
33: aconst_null
astore 4
34: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol java.lang.String javax.tools.JavaFileManager$Location javax.tools.JavaFileObject java.io.OutputStream top java.lang.Throwable
StackMap stack:
aload 7
athrow
35: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$ClassSymbol java.lang.String javax.tools.JavaFileManager$Location javax.tools.JavaFileObject java.io.OutputStream
StackMap stack:
aload 5
ifnull 39
36: aload 5
invokevirtual java.io.OutputStream.close:()V
37: aload 4
invokeinterface javax.tools.JavaFileObject.delete:()Z
pop
38: aconst_null
astore 4
39: StackMap locals:
StackMap stack:
aload 4
areturn
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 40 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 40 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
3 40 2 name Ljava/lang/String;
8 9 3 outLocn Ljavax/tools/JavaFileManager$Location;
10 40 3 outLocn Ljavax/tools/JavaFileManager$Location;
7 8 4 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
16 40 4 outFile Ljavax/tools/JavaFileObject;
17 40 5 out Ljava/io/OutputStream;
24 25 6 ex Lcom/sun/tools/javac/code/Types$SignatureGenerator$InvalidSignatureException;
Exception table:
from to target type
17 22 23 Class com.sun.tools.javac.code.Types$SignatureGenerator$InvalidSignatureException
17 25 29 any
Exceptions:
throws java.io.IOException, com.sun.tools.javac.jvm.ClassWriter$PoolOverflow, com.sun.tools.javac.jvm.ClassWriter$StringOverflow
MethodParameters:
Name Flags
c
public void writeClassFile(java.io.OutputStream, com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Ljava/io/OutputStream;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.flags:()J
ldc 16777216
land
lconst_0
lcmp
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
invokevirtual com.sun.tools.javac.util.ByteBuffer.reset:()V
4: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
invokevirtual com.sun.tools.javac.util.ByteBuffer.reset:()V
5: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 6: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.interfaces:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
astore 4
start local 4 7: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.getTypeArguments:()Lcom/sun/tools/javac/util/List;
astore 5
start local 5 8: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 11
9: ldc 32768
istore 6
start local 6 10: goto 15
end local 6 11: StackMap locals: com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List
StackMap stack:
aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.flags:()J
ldc -8796093022209
land
invokevirtual com.sun.tools.javac.jvm.ClassWriter.adjustFlags:(J)I
istore 6
start local 6 12: iload 6
iconst_4
iand
ifeq 13
iload 6
iconst_1
ior
istore 6
13: StackMap locals: int
StackMap stack:
iload 6
sipush 32273
iand
sipush -2049
iand
istore 6
14: iload 6
sipush 512
iand
ifne 15
iload 6
bipush 32
ior
istore 6
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpClassModifiers:Z
ifeq 20
16: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.log:Lcom/sun/tools/javac/util/Log;
getstatic com.sun.tools.javac.util.Log$WriterKind.ERROR:Lcom/sun/tools/javac/util/Log$WriterKind;
invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
astore 7
start local 7 17: aload 7
invokevirtual java.io.PrintWriter.println:()V
18: aload 7
new java.lang.StringBuilder
dup
ldc "CLASSFILE "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getQualifiedName:()Lcom/sun/tools/javac/util/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
19: aload 7
new java.lang.StringBuilder
dup
ldc "---"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
i2l
invokestatic com.sun.tools.javac.jvm.ClassWriter.flagNames:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 7 20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 6
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
21: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 26
22: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.unnamedPackage:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
astore 7
start local 7 23: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
24: new com.sun.tools.javac.code.Symbol$ClassSymbol
dup
lconst_0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.module_info:Lcom/sun/tools/javac/util/Name;
aload 7
invokespecial com.sun.tools.javac.code.Symbol$ClassSymbol.<init>:(JLcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol;)V
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 7 25: goto 27
26: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
27: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 3
getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 28
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 3
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
goto 29
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
28: iconst_0
StackMap locals: com.sun.tools.javac.jvm.ClassWriter java.io.OutputStream com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
29: invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
30: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
invokevirtual com.sun.tools.javac.util.List.length:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
31: aload 4
astore 7
start local 7 32: goto 35
33: StackMap locals: com.sun.tools.javac.util.List
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 7
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
34: aload 7
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 7
StackMap locals:
StackMap stack:
35: aload 7
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 33
end local 7 36: iconst_0
istore 7
start local 7 37: iconst_0
istore 8
start local 8 38: aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
getstatic com.sun.tools.javac.code.Scope$LookupKind.NON_RECURSIVE:Lcom/sun/tools/javac/code/Scope$LookupKind;
invokevirtual com.sun.tools.javac.code.Scope$WriteableScope.getSymbols:(Lcom/sun/tools/javac/code/Scope$LookupKind;)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 10
goto 46
StackMap locals: com.sun.tools.javac.jvm.ClassWriter java.io.OutputStream com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List int int int top java.util.Iterator
StackMap stack:
39: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 9
start local 9 40: invokestatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Kinds$Kind:()[I
aload 9
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iaload
tableswitch { // 3 - 5
3: 44
4: 41
5: 42
default: 45
}
41: StackMap locals: com.sun.tools.javac.jvm.ClassWriter java.io.OutputStream com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List int int int com.sun.tools.javac.code.Symbol java.util.Iterator
StackMap stack:
iinc 7 1
goto 46
42: StackMap locals:
StackMap stack:
aload 9
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc 137438953472
land
lconst_0
lcmp
ifne 46
iinc 8 1
43: goto 46
44: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 9
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.PoolWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
goto 46
45: StackMap locals:
StackMap stack:
invokestatic com.sun.tools.javac.util.Assert.error:()V
end local 9 46: StackMap locals: com.sun.tools.javac.jvm.ClassWriter java.io.OutputStream com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List int int int top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 39
47: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.trans_local:Lcom/sun/tools/javac/util/List;
ifnull 52
48: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.trans_local:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 51
StackMap locals:
StackMap stack:
49: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 9
start local 9 50: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 9
invokevirtual com.sun.tools.javac.jvm.PoolWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
end local 9 51: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 49
52: StackMap locals: com.sun.tools.javac.jvm.ClassWriter java.io.OutputStream com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Type com.sun.tools.javac.util.List com.sun.tools.javac.util.List int int int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
53: aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeFields:(Lcom/sun/tools/javac/code/Scope;)V
54: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 8
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
55: aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMethods:(Lcom/sun/tools/javac/code/Scope;)V
56: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 9
start local 9 57: iconst_0
istore 10
start local 10 58: aload 5
invokevirtual com.sun.tools.javac.util.List.length:()I
ifne 60
aload 3
invokevirtual com.sun.tools.javac.code.Type.allparams:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
ifne 60
59: iconst_0
goto 61
StackMap locals: int int
StackMap stack:
60: iconst_1
StackMap locals:
StackMap stack: int
61: istore 11
start local 11 62: aload 4
astore 12
start local 12 63: goto 68
64: StackMap locals: int com.sun.tools.javac.util.List
StackMap stack:
aload 12
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
invokevirtual com.sun.tools.javac.code.Type.allparams:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
ifeq 65
iconst_1
goto 66
StackMap locals:
StackMap stack:
65: iconst_0
StackMap locals:
StackMap stack: int
66: istore 11
67: aload 12
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 12
StackMap locals:
StackMap stack:
68: iload 11
ifne 69
aload 12
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 64
end local 12 69: StackMap locals:
StackMap stack:
iload 11
ifeq 74
70: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.Signature:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 12
start local 12 71: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 2
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putSignature:(Lcom/sun/tools/javac/code/Symbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
72: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
73: iinc 10 1
end local 12 74: StackMap locals:
StackMap stack:
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
ifnull 80
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.emitSourceFile:Z
ifeq 80
75: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.SourceFile:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 12
start local 12 76: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
invokestatic com.sun.tools.javac.file.PathFileObject.getSimpleName:(Ljavax/tools/FileObject;)Ljava/lang/String;
astore 13
start local 13 77: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 13
invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
78: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
79: iinc 10 1
end local 13 end local 12 80: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.genCrt:Z
ifeq 89
81: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.SourceID:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 12
start local 12 82: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.getLastModified:(Ljavax/tools/FileObject;)J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
83: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
84: iinc 10 1
85: aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.CompilationID:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 12
86: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
invokestatic java.lang.System.currentTimeMillis:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putName:(Lcom/sun/tools/javac/util/Name;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
87: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
88: iinc 10 1
end local 12 89: StackMap locals:
StackMap stack:
iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.flags:()J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeFlagAttrs:(J)I
iadd
istore 10
90: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeJavaAnnotations:(Lcom/sun/tools/javac/util/List;)I
iadd
istore 10
91: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
iconst_0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeTypeAnnotations:(Lcom/sun/tools/javac/util/List;Z)I
iadd
istore 10
92: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeEnclosingMethodAttribute:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
93: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 96
94: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeModuleAttribute:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
95: iload 10
aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc -131073
land
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeFlagAttrs:(J)I
iadd
istore 10
96: StackMap locals:
StackMap stack:
iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeExtraClassAttributes:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
97: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeExtraAttributes:(Lcom/sun/tools/javac/code/Symbol;)I
iadd
istore 10
98: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
ldc -889275714
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendInt:(I)V
99: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.preview:Lcom/sun/tools/javac/code/Preview;
invokevirtual com.sun.tools.javac.code.Preview.isEnabled:()Z
ifeq 102
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.preview:Lcom/sun/tools/javac/code/Preview;
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
invokevirtual com.sun.tools.javac.code.Preview.usesPreview:(Ljavax/tools/JavaFileObject;)Z
ifeq 102
100: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
ldc 65535
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
101: goto 103
102: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
getfield com.sun.tools.javac.jvm.Target.minorVersion:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
103: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
getfield com.sun.tools.javac.jvm.Target.majorVersion:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
104: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 108
105: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
invokevirtual com.sun.tools.javac.jvm.Target.hasNestmateAccess:()Z
ifeq 108
106: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeNestMembersIfNeeded:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
107: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeNestHostIfNeeded:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
108: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.isRecord:()Z
ifeq 110
109: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeRecordAttribute:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
110: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.target:Lcom/sun/tools/javac/jvm/Target;
invokevirtual com.sun.tools.javac.jvm.Target.hasSealedClasses:()Z
ifeq 112
111: iload 10
aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writePermittedSubclassesIfNeeded:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
iadd
istore 10
112: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ifne 115
113: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeBootstrapMethods:()V
114: iinc 10 1
115: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
getfield com.sun.tools.javac.jvm.PoolWriter.innerClasses:Ljava/util/LinkedHashSet;
invokevirtual java.util.LinkedHashSet.isEmpty:()Z
ifne 118
116: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeInnerClasses:()V
117: iinc 10 1
118: StackMap locals:
StackMap stack:
aload 0
iload 9
iload 10
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
119: aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iconst_0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.length:I
invokevirtual java.io.OutputStream.write:([BII)V
120: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.writePool:(Ljava/io/OutputStream;)V
121: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
invokevirtual com.sun.tools.javac.jvm.PoolWriter.reset:()V
122: aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.elems:[B
iconst_0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
getfield com.sun.tools.javac.util.ByteBuffer.length:I
invokevirtual java.io.OutputStream.write:([BII)V
123: return
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 124 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 124 1 out Ljava/io/OutputStream;
0 124 2 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
6 124 3 supertype Lcom/sun/tools/javac/code/Type;
7 124 4 interfaces Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
8 124 5 typarams Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
10 11 6 flags I
12 124 6 flags I
17 20 7 pw Ljava/io/PrintWriter;
23 25 7 unnamed Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
32 36 7 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
37 124 7 fieldsCount I
38 124 8 methodsCount I
40 46 9 sym Lcom/sun/tools/javac/code/Symbol;
50 51 9 local Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
57 124 9 acountIdx I
58 124 10 acount I
62 124 11 sigReq Z
63 69 12 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
71 74 12 alenIdx I
76 80 12 alenIdx I
77 80 13 simpleName Ljava/lang/String;
82 89 12 alenIdx I
Exceptions:
throws java.io.IOException, com.sun.tools.javac.jvm.ClassWriter$PoolOverflow, com.sun.tools.javac.jvm.ClassWriter$StringOverflow
MethodParameters:
Name Flags
out
c
protected int (com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 1 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
MethodParameters:
Name Flags
c
protected int (com.sun.tools.javac.code.Symbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.extraAttributeHooks:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol int top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.function.ToIntFunction
astore 3
start local 3 3: iload 2
aload 3
aload 1
invokeinterface java.util.function.ToIntFunction.applyAsInt:(Ljava/lang/Object;)I
iadd
istore 2
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 6 1 sym Lcom/sun/tools/javac/code/Symbol;
1 6 2 i I
3 4 3 hook Ljava/util/function/ToIntFunction<Lcom/sun/tools/javac/code/Symbol;>;
MethodParameters:
Name Flags
sym
int adjustFlags(long);
descriptor: (J)I
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: lload 1
l2i
istore 3
start local 3 1: lload 1
ldc 2147483648
land
lconst_0
lcmp
ifeq 3
2: iload 3
bipush 64
ior
istore 3
3: StackMap locals: int
StackMap stack:
lload 1
ldc 17179869184
land
lconst_0
lcmp
ifeq 5
4: iload 3
sipush 128
ior
istore 3
5: StackMap locals:
StackMap stack:
lload 1
ldc 8796093022208
land
lconst_0
lcmp
ifeq 7
6: iload 3
sipush -1025
iand
istore 3
7: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 8 1 flags J
1 8 3 result I
MethodParameters:
Name Flags
flags final
long getLastModified(javax.tools.FileObject);
descriptor: (Ljavax/tools/FileObject;)J
flags: (0x0000)
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: lconst_0
lstore 2
start local 2 1: aload 1
invokeinterface javax.tools.FileObject.getLastModified:()J
lstore 2
2: goto 5
StackMap locals: com.sun.tools.javac.jvm.ClassWriter javax.tools.FileObject long
StackMap stack: java.lang.SecurityException
3: astore 4
start local 4 4: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "CRT: couldn't get source file modification date: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.SecurityException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 4 5: StackMap locals:
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 6 1 filename Ljavax/tools/FileObject;
1 6 2 mod J
4 5 4 e Ljava/lang/SecurityException;
Exception table:
from to target type
1 2 3 Class java.lang.SecurityException
MethodParameters:
Name Flags
filename
static int[] $SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.tools.javac.code.Attribute$RetentionPolicy.values:()[Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.tools.javac.code.Attribute$RetentionPolicy.CLASS:Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.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.code.Attribute$RetentionPolicy.RUNTIME:Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.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.code.Attribute$RetentionPolicy.SOURCE:Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
invokevirtual com.sun.tools.javac.code.Attribute$RetentionPolicy.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.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Attribute$RetentionPolicy:[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$TargetType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$TargetType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.tools.javac.code.TargetType.values:()[Lcom/sun/tools/javac/code/TargetType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.tools.javac.code.TargetType.CAST:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 18
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.TargetType.CLASS_EXTENDS:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.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.code.TargetType.CLASS_TYPE_PARAMETER:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
iconst_1
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.TargetType.CLASS_TYPE_PARAMETER_BOUND:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
iconst_4
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.TargetType.CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 19
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.TargetType.CONSTRUCTOR_REFERENCE:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 16
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.TargetType.CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 21
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.TargetType.EXCEPTION_PARAMETER:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 13
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.TargetType.FIELD:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 6
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.TargetType.INSTANCEOF:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 14
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.TargetType.LOCAL_VARIABLE:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 11
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.TargetType.METHOD_FORMAL_PARAMETER:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 9
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.TargetType.METHOD_INVOCATION_TYPE_ARGUMENT:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 20
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.TargetType.METHOD_RECEIVER:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 8
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.TargetType.METHOD_REFERENCE:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 17
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.TargetType.METHOD_REFERENCE_TYPE_ARGUMENT:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 22
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.TargetType.METHOD_RETURN:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 7
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.TargetType.METHOD_TYPE_PARAMETER:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
iconst_2
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.TargetType.METHOD_TYPE_PARAMETER_BOUND:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
iconst_5
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.TargetType.NEW:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 15
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.TargetType.RESOURCE_VARIABLE:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 12
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.TargetType.THROWS:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 10
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.TargetType.UNKNOWN:Lcom/sun/tools/javac/code/TargetType;
invokevirtual com.sun.tools.javac.code.TargetType.ordinal:()I
bipush 23
iastore
69: goto 71
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
70: pop
StackMap locals:
StackMap stack:
71: aload 0
dup
putstatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$TargetType:[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
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.ClassWriter.$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.ClassWriter.$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.ClassWriter.$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.ClassWriter.$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
static int[] $SWITCH_TABLE$com$sun$tools$javac$code$Kinds$Kind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Kinds$Kind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.tools.javac.code.Kinds$Kind.values:()[Lcom/sun/tools/javac/code/Kinds$Kind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.tools.javac.code.Kinds$Kind.ABSENT_MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 17
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.Kinds$Kind.ABSENT_TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 18
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.Kinds$Kind.ABSENT_VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 14
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.Kinds$Kind.AMBIGUOUS:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 9
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.Kinds$Kind.BAD_RESTRICTED_TYPE:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 13
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.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 8
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.Kinds$Kind.HIDDEN:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 10
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.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.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.Kinds$Kind.MISSING_ENCL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 12
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.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.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.Kinds$Kind.NIL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_1
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.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_2
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.Kinds$Kind.POLY:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 6
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.Kinds$Kind.STATICERR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 11
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.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_3
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.Kinds$Kind.VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_4
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.Kinds$Kind.WRONG_MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 16
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.Kinds$Kind.WRONG_MTHS:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 15
iastore
54: goto 56
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
55: pop
StackMap locals:
StackMap stack:
56: aload 0
dup
putstatic com.sun.tools.javac.jvm.ClassWriter.$SWITCH_TABLE$com$sun$tools$javac$code$Kinds$Kind:[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
private static java.util.Set lambda$0(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
private void lambda$1(com.sun.tools.javac.code.Symbol$ClassSymbol, java.util.Set);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
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.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 2
invokeinterface java.util.Set.size:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: aload 2
aload 0
invokedynamic accept(Lcom/sun/tools/javac/jvm/ClassWriter;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
com/sun/tools/javac/jvm/ClassWriter.lambda$2(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V (7)
(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 4 1 srvc Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
0 4 2 impls Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
private void lambda$2(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolWriter:Lcom/sun/tools/javac/jvm/PoolWriter;
aload 1
invokevirtual com.sun.tools.javac.jvm.PoolWriter.putClass:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 1 1 impl Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
}
SourceFile: "ClassWriter.java"
NestMembers:
com.sun.tools.javac.jvm.ClassWriter$AttributeWriter com.sun.tools.javac.jvm.ClassWriter$PoolOverflow com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame$AppendFrame com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame$ChopFrame com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame$FullFrame com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame$SameFrame com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame$SameLocals1StackItemFrame com.sun.tools.javac.jvm.ClassWriter$StringOverflow
InnerClasses:
public Compound = com.sun.tools.javac.code.Attribute$Compound of com.sun.tools.javac.code.Attribute
public final RetentionPolicy = com.sun.tools.javac.code.Attribute$RetentionPolicy of com.sun.tools.javac.code.Attribute
public TypeCompound = com.sun.tools.javac.code.Attribute$TypeCompound of com.sun.tools.javac.code.Attribute
public abstract Visitor = com.sun.tools.javac.code.Attribute$Visitor of com.sun.tools.javac.code.Attribute
public ExportsDirective = com.sun.tools.javac.code.Directive$ExportsDirective of com.sun.tools.javac.code.Directive
public final ExportsFlag = com.sun.tools.javac.code.Directive$ExportsFlag of com.sun.tools.javac.code.Directive
public OpensDirective = com.sun.tools.javac.code.Directive$OpensDirective of com.sun.tools.javac.code.Directive
public final OpensFlag = com.sun.tools.javac.code.Directive$OpensFlag of com.sun.tools.javac.code.Directive
public ProvidesDirective = com.sun.tools.javac.code.Directive$ProvidesDirective of com.sun.tools.javac.code.Directive
public RequiresDirective = com.sun.tools.javac.code.Directive$RequiresDirective of com.sun.tools.javac.code.Directive
public final RequiresFlag = com.sun.tools.javac.code.Directive$RequiresFlag of com.sun.tools.javac.code.Directive
public UsesDirective = com.sun.tools.javac.code.Directive$UsesDirective of com.sun.tools.javac.code.Directive
public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
public final LookupKind = com.sun.tools.javac.code.Scope$LookupKind of com.sun.tools.javac.code.Scope
public abstract WriteableScope = com.sun.tools.javac.code.Scope$WriteableScope of com.sun.tools.javac.code.Scope
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 final ModuleFlags = com.sun.tools.javac.code.Symbol$ModuleFlags of com.sun.tools.javac.code.Symbol
public ModuleSymbol = com.sun.tools.javac.code.Symbol$ModuleSymbol of com.sun.tools.javac.code.Symbol
public PackageSymbol = com.sun.tools.javac.code.Symbol$PackageSymbol of com.sun.tools.javac.code.Symbol
public RecordComponent = com.sun.tools.javac.code.Symbol$RecordComponent of com.sun.tools.javac.code.Symbol
public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
public TypePathEntry = com.sun.tools.javac.code.TypeAnnotationPosition$TypePathEntry of com.sun.tools.javac.code.TypeAnnotationPosition
public abstract SignatureGenerator = com.sun.tools.javac.code.Types$SignatureGenerator of com.sun.tools.javac.code.Types
public InvalidSignatureException = com.sun.tools.javac.code.Types$SignatureGenerator$InvalidSignatureException of com.sun.tools.javac.code.Types$SignatureGenerator
AttributeWriter = com.sun.tools.javac.jvm.ClassWriter$AttributeWriter of com.sun.tools.javac.jvm.ClassWriter
public PoolOverflow = com.sun.tools.javac.jvm.ClassWriter$PoolOverflow of com.sun.tools.javac.jvm.ClassWriter
abstract StackMapTableFrame = com.sun.tools.javac.jvm.ClassWriter$StackMapTableFrame of com.sun.tools.javac.jvm.ClassWriter
public StringOverflow = com.sun.tools.javac.jvm.ClassWriter$StringOverflow of com.sun.tools.javac.jvm.ClassWriter
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
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
public abstract Dynamic = com.sun.tools.javac.jvm.PoolConstant$Dynamic of com.sun.tools.javac.jvm.PoolConstant
public BsmKey = com.sun.tools.javac.jvm.PoolConstant$Dynamic$BsmKey of com.sun.tools.javac.jvm.PoolConstant$Dynamic
public abstract LoadableConstant = com.sun.tools.javac.jvm.PoolConstant$LoadableConstant of com.sun.tools.javac.jvm.PoolConstant
SharedSignatureGenerator = com.sun.tools.javac.jvm.PoolWriter$SharedSignatureGenerator of com.sun.tools.javac.jvm.PoolWriter
public Errors = com.sun.tools.javac.resources.CompilerProperties$Errors of com.sun.tools.javac.resources.CompilerProperties
public Fragments = com.sun.tools.javac.resources.CompilerProperties$Fragments of com.sun.tools.javac.resources.CompilerProperties
public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
public final Fragment = com.sun.tools.javac.util.JCDiagnostic$Fragment of com.sun.tools.javac.util.JCDiagnostic
public final WriterKind = com.sun.tools.javac.util.Log$WriterKind of com.sun.tools.javac.util.Log
public abstract LineMap = com.sun.tools.javac.util.Position$LineMap of com.sun.tools.javac.util.Position
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject