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.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
public boolean multiModuleMode;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
static final int DATA_BUF_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 65520
static final int POOL_BUF_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 131056
com.sun.tools.javac.util.ByteBuffer databuf;
descriptor: Lcom/sun/tools/javac/util/ByteBuffer;
flags: (0x0000)
com.sun.tools.javac.util.ByteBuffer poolbuf;
descriptor: Lcom/sun/tools/javac/util/ByteBuffer;
flags: (0x0000)
com.sun.tools.javac.jvm.Pool pool;
descriptor: Lcom/sun/tools/javac/jvm/Pool;
flags: (0x0000)
java.util.Set<com.sun.tools.javac.code.Symbol$ClassSymbol> innerClasses;
descriptor: Ljava/util/Set;
flags: (0x0000)
Signature: Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
com.sun.tools.javac.util.ListBuffer<com.sun.tools.javac.code.Symbol$ClassSymbol> innerClassesQueue;
descriptor: Lcom/sun/tools/javac/util/ListBuffer;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
java.util.Map<com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey, com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue> bootstrapMethods;
descriptor: Ljava/util/Map;
flags: (0x0000)
Signature: Ljava/util/Map<Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsKey;Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsValue;>;
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
private final com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator signatureGen;
descriptor: Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
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=5, 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
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;
2: 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;
3: 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;
4: 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
5: 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;
6: 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;
7: 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;
8: 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;
9: 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;
10: 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;
11: 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;
12: aload 0
new com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator
dup
aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokespecial com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.<init>:(Lcom/sun/tools/javac/jvm/ClassWriter;Lcom/sun/tools/javac/code/Types;)V
putfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
13: 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
14: 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
15: 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
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.G_CUSTOM:Lcom/sun/tools/javac/main/Option;
invokevirtual com.sun.tools.javac.util.Options.isUnset:(Lcom/sun/tools/javac/main/Option;)Z
ifne 18
17: 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 18
iconst_0
goto 19
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.util.Context
StackMap stack: com.sun.tools.javac.jvm.ClassWriter
18: iconst_1
19: 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
20: 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 21: aload 2
ifnull 34
22: aload 0
aload 2
bipush 99
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 23
iconst_1
goto 24
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
23: 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
24: putfield com.sun.tools.javac.jvm.ClassWriter.dumpClassModifiers:Z
25: aload 0
aload 2
bipush 102
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 26
iconst_1
goto 27
StackMap locals:
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.dumpFieldModifiers:Z
28: aload 0
aload 2
bipush 105
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.dumpInnerClassModifiers:Z
31: aload 0
aload 2
bipush 109
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.dumpMethodModifiers:Z
34: StackMap locals:
StackMap stack:
return
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 context Lcom/sun/tools/javac/util/Context;
21 35 2 modifierFlags Ljava/lang/String;
MethodParameters:
Name Flags
context
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
com.sun.tools.javac.util.Name typeSig(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.isEmpty:()Z
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.assembleSig:(Lcom/sun/tools/javac/code/Type;)V
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.toName:()Lcom/sun/tools/javac/util/Name;
astore 2
start local 2 3: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.reset:()V
4: aload 2
areturn
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 type Lcom/sun/tools/javac/code/Type;
3 5 2 n Lcom/sun/tools/javac/util/Name;
MethodParameters:
Name Flags
type
public com.sun.tools.javac.util.Name xClassName(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
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 2
1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 1
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$TypeSymbol.flatName:()Lcom/sun/tools/javac/util/Name;
invokestatic com.sun.tools.javac.jvm.ClassWriter.externalize:(Lcom/sun/tools/javac/util/Name;)[B
invokevirtual com.sun.tools.javac.util.Names.fromUtf:([B)Lcom/sun/tools/javac/util/Name;
areturn
2: StackMap locals:
StackMap stack:
aload 1
getstatic com.sun.tools.javac.code.TypeTag.ARRAY:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 4
3: aload 0
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.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
areturn
4: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "xClassName expects class or array type, got "
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
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 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
void writePool(com.sun.tools.javac.jvm.Pool);
descriptor: (Lcom/sun/tools/javac/jvm/Pool;)V
flags: (0x0000)
Code:
stack=5, locals=14, args_size=2
start local 0 start local 1 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
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
2: iconst_1
istore 3
start local 3 3: goto 116
4: StackMap locals: int int
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Pool.pool:[Ljava/lang/Object;
iload 3
aaload
astore 4
start local 4 5: aload 4
invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 4
instanceof com.sun.tools.javac.jvm.Pool$Method
ifne 7
aload 4
instanceof com.sun.tools.javac.jvm.Pool$Variable
ifeq 8
7: StackMap locals: java.lang.Object
StackMap stack:
aload 4
checkcast com.sun.tools.javac.code.Symbol$DelegatedSymbol
invokevirtual com.sun.tools.javac.code.Symbol$DelegatedSymbol.getUnderlyingSymbol:()Lcom/sun/tools/javac/code/Symbol;
astore 4
8: StackMap locals:
StackMap stack:
aload 4
instanceof com.sun.tools.javac.code.Symbol$MethodSymbol
ifeq 37
9: aload 4
checkcast com.sun.tools.javac.code.Symbol$MethodSymbol
astore 5
start local 5 10: aload 5
invokevirtual com.sun.tools.javac.code.Symbol$MethodSymbol.isDynamic:()Z
ifne 18
11: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc 512
land
lconst_0
lcmp
ifeq 13
12: bipush 11
goto 14
13: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Pool int int java.lang.Object com.sun.tools.javac.code.Symbol$MethodSymbol
StackMap stack: com.sun.tools.javac.util.ByteBuffer
bipush 10
14: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Pool int int java.lang.Object com.sun.tools.javac.code.Symbol$MethodSymbol
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
15: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 5
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
16: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.nameType:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
17: goto 115
18: StackMap locals:
StackMap stack:
aload 5
checkcast com.sun.tools.javac.code.Symbol$DynamicMethodSymbol
astore 6
start local 6 19: new com.sun.tools.javac.jvm.Pool$MethodHandle
dup
aload 6
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsmKind:I
aload 6
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsm:Lcom/sun/tools/javac/code/Symbol;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokespecial com.sun.tools.javac.jvm.Pool$MethodHandle.<init>:(ILcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)V
astore 7
start local 7 20: new com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey
dup
aload 6
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokespecial com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey.<init>:(Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;Lcom/sun/tools/javac/code/Types;)V
astore 8
start local 8 21: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.bootstrapMethods:Ljava/util/Map;
aload 8
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue
astore 9
start local 9 22: aload 9
ifnonnull 26
23: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
istore 10
start local 10 24: new com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue
dup
aload 7
iload 10
invokespecial com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue.<init>:(Lcom/sun/tools/javac/jvm/Pool$MethodHandle;I)V
astore 9
25: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.bootstrapMethods:Ljava/util/Map;
aload 8
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 10 26: StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Pool int int java.lang.Object com.sun.tools.javac.code.Symbol$MethodSymbol com.sun.tools.javac.code.Symbol$DynamicMethodSymbol com.sun.tools.javac.jvm.Pool$MethodHandle com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue
StackMap stack:
aload 1
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.Pool.put:(Ljava/lang/Object;)I
pop
27: aload 1
aload 7
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
pop
28: aload 6
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.staticArgs:[Ljava/lang/Object;
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 32
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Pool int int java.lang.Object com.sun.tools.javac.code.Symbol$MethodSymbol com.sun.tools.javac.code.Symbol$DynamicMethodSymbol com.sun.tools.javac.jvm.Pool$MethodHandle com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue top int int java.lang.Object[]
StackMap stack:
29: aload 13
iload 11
aaload
astore 10
start local 10 30: aload 1
aload 10
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
pop
end local 10 31: iinc 11 1
StackMap locals:
StackMap stack:
32: iload 11
iload 12
if_icmplt 29
33: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 18
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
34: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 9
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue.index:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
35: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.nameType:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 9 end local 8 end local 7 end local 6 end local 5 36: goto 115
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Pool int int java.lang.Object
StackMap stack:
37: aload 4
instanceof com.sun.tools.javac.code.Symbol$VarSymbol
ifeq 43
38: aload 4
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 5
start local 5 39: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 9
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
40: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
41: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.nameType:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 42: goto 115
StackMap locals:
StackMap stack:
43: aload 4
instanceof com.sun.tools.javac.util.Name
ifeq 50
44: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_1
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
45: aload 4
checkcast com.sun.tools.javac.util.Name
invokevirtual com.sun.tools.javac.util.Name.toUtf:()[B
astore 5
start local 5 46: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
arraylength
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
47: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
iconst_0
aload 5
arraylength
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendBytes:([BII)V
48: aload 5
arraylength
ldc 65535
if_icmple 115
49: new com.sun.tools.javac.jvm.ClassWriter$StringOverflow
dup
aload 4
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial com.sun.tools.javac.jvm.ClassWriter$StringOverflow.<init>:(Ljava/lang/String;)V
athrow
end local 5 50: StackMap locals:
StackMap stack:
aload 4
instanceof com.sun.tools.javac.code.Symbol$ClassSymbol
ifeq 60
51: aload 4
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 5
start local 5 52: aload 5
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 53
aload 1
aload 5
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
pop
53: StackMap locals: com.sun.tools.javac.code.Symbol$ClassSymbol
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
54: aload 5
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
getstatic com.sun.tools.javac.code.TypeTag.ARRAY:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 57
55: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
56: goto 115
57: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 5
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flatname:Lcom/sun/tools/javac/util/Name;
invokestatic com.sun.tools.javac.jvm.ClassWriter.externalize:(Lcom/sun/tools/javac/util/Name;)[B
invokevirtual com.sun.tools.javac.util.Names.fromUtf:([B)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
58: aload 0
aload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
end local 5 59: goto 115
StackMap locals:
StackMap stack:
60: aload 4
instanceof com.sun.tools.javac.jvm.ClassFile$NameAndType
ifeq 66
61: aload 4
checkcast com.sun.tools.javac.jvm.ClassFile$NameAndType
astore 5
start local 5 62: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 12
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
63: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 5
getfield com.sun.tools.javac.jvm.ClassFile$NameAndType.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
64: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
getfield com.sun.tools.javac.jvm.ClassFile$NameAndType.uniqueType:Lcom/sun/tools/javac/code/Types$UniqueType;
getfield com.sun.tools.javac.code.Types$UniqueType.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 65: goto 115
StackMap locals:
StackMap stack:
66: aload 4
instanceof java.lang.Integer
ifeq 70
67: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_3
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
68: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendInt:(I)V
69: goto 115
StackMap locals:
StackMap stack:
70: aload 4
instanceof java.lang.Long
ifeq 75
71: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_5
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
72: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendLong:(J)V
73: iinc 3 1
74: goto 115
StackMap locals:
StackMap stack:
75: aload 4
instanceof java.lang.Float
ifeq 79
76: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_4
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
77: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
checkcast java.lang.Float
invokevirtual java.lang.Float.floatValue:()F
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendFloat:(F)V
78: goto 115
StackMap locals:
StackMap stack:
79: aload 4
instanceof java.lang.Double
ifeq 84
80: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 6
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
81: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 4
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendDouble:(D)V
82: iinc 3 1
83: goto 115
StackMap locals:
StackMap stack:
84: aload 4
instanceof java.lang.String
ifeq 88
85: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 8
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
86: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 4
checkcast java.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.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
87: goto 115
StackMap locals:
StackMap stack:
88: aload 4
instanceof com.sun.tools.javac.code.Types$UniqueType
ifeq 98
89: aload 4
checkcast com.sun.tools.javac.code.Types$UniqueType
getfield com.sun.tools.javac.code.Types$UniqueType.type:Lcom/sun/tools/javac/code/Type;
astore 5
start local 5 90: aload 5
getstatic com.sun.tools.javac.code.TypeTag.METHOD:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 94
91: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 16
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
92: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
checkcast com.sun.tools.javac.code.Type$MethodType
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
93: goto 115
94: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 5
getstatic com.sun.tools.javac.code.TypeTag.ARRAY:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
95: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 7
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
96: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
aload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.xClassName:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 97: goto 115
StackMap locals:
StackMap stack:
98: aload 4
instanceof com.sun.tools.javac.jvm.Pool$MethodHandle
ifeq 104
99: aload 4
checkcast com.sun.tools.javac.jvm.Pool$MethodHandle
astore 5
start local 5 100: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 15
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
101: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
getfield com.sun.tools.javac.jvm.Pool$MethodHandle.refKind:I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
102: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 5
getfield com.sun.tools.javac.jvm.Pool$MethodHandle.refSym:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 103: goto 115
StackMap locals:
StackMap stack:
104: aload 4
instanceof com.sun.tools.javac.code.Symbol$ModuleSymbol
ifeq 109
105: aload 4
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
astore 5
start local 5 106: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 19
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
107: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 5
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 108: goto 115
StackMap locals:
StackMap stack:
109: aload 4
instanceof com.sun.tools.javac.code.Symbol$PackageSymbol
ifeq 114
110: aload 4
checkcast com.sun.tools.javac.code.Symbol$PackageSymbol
astore 5
start local 5 111: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 20
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendByte:(I)V
112: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 1
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.names:Lcom/sun/tools/javac/util/Names;
aload 5
getfield com.sun.tools.javac.code.Symbol$PackageSymbol.fullname:Lcom/sun/tools/javac/util/Name;
invokestatic com.sun.tools.javac.jvm.ClassWriter.externalize:(Lcom/sun/tools/javac/util/Name;)[B
invokevirtual com.sun.tools.javac.util.Names.fromUtf:([B)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 5 113: goto 115
114: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "writePool "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.tools.javac.util.Assert.error:(Ljava/lang/String;)V
115: StackMap locals:
StackMap stack:
iinc 3 1
end local 4 116: StackMap locals:
StackMap stack:
iload 3
aload 1
getfield com.sun.tools.javac.jvm.Pool.pp:I
if_icmplt 4
117: aload 1
getfield com.sun.tools.javac.jvm.Pool.pp:I
ldc 65535
if_icmple 119
118: new com.sun.tools.javac.jvm.ClassWriter$PoolOverflow
dup
invokespecial com.sun.tools.javac.jvm.ClassWriter$PoolOverflow.<init>:()V
athrow
119: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iload 2
aload 1
getfield com.sun.tools.javac.jvm.Pool.pp:I
invokevirtual com.sun.tools.javac.jvm.ClassWriter.putChar:(Lcom/sun/tools/javac/util/ByteBuffer;II)V
120: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 121 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 121 1 pool Lcom/sun/tools/javac/jvm/Pool;
1 121 2 poolCountIdx I
3 121 3 i I
5 116 4 value Ljava/lang/Object;
10 36 5 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
19 36 6 dynSym Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;
20 36 7 handle Lcom/sun/tools/javac/jvm/Pool$MethodHandle;
21 36 8 key Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsKey;
22 36 9 val Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsValue;
24 26 10 index I
30 31 10 staticArg Ljava/lang/Object;
39 42 5 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
46 50 5 bs [B
52 59 5 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
62 65 5 nt Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
90 97 5 type Lcom/sun/tools/javac/code/Type;
100 103 5 ref Lcom/sun/tools/javac/jvm/Pool$MethodHandle;
106 108 5 m Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
111 113 5 m Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
Exceptions:
throws com.sun.tools.javac.jvm.ClassWriter$PoolOverflow, com.sun.tools.javac.jvm.ClassWriter$StringOverflow
MethodParameters:
Name Flags
pool
com.sun.tools.javac.jvm.ClassFile$NameAndType nameType(com.sun.tools.javac.code.Symbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.jvm.ClassFile$NameAndType
dup
aload 1
getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
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.externalType:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokespecial com.sun.tools.javac.jvm.ClassFile$NameAndType.<init>:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)V
areturn
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 sym Lcom/sun/tools/javac/code/Symbol;
MethodParameters:
Name Flags
sym
int writeAttr(com.sun.tools.javac.util.Name);
descriptor: (Lcom/sun/tools/javac/util/Name;)I
flags: (0x0000)
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendInt:(I)V
2: 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 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 3 1 attrName Lcom/sun/tools/javac/util/Name;
MethodParameters:
Name Flags
attrName
void endAttr(int);
descriptor: (I)V
flags: (0x0000)
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=4, 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
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 4
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.nameType:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/jvm/ClassFile$NameAndType;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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);
descriptor: (Lcom/sun/tools/javac/code/Symbol;)I
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.flags:()J
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeFlagAttrs:(J)I
istore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
lstore 3
start local 3 2: lload 3
ldc 2147487744
land
ldc 4096
lcmp
ifeq 10
3: lload 3
ldc 536870912
land
lconst_0
lcmp
ifne 10
4: 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 6
5: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
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.ClassWriter$CWSignatureGenerator.hasTypeVar:(Lcom/sun/tools/javac/util/List;)Z
ifeq 10
6: StackMap locals: int 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 5
start local 5 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
8: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
9: iinc 2 1
end local 5 10: StackMap locals:
StackMap stack:
iload 2
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 2
11: iload 2
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 2
12: iload 2
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 sym Lcom/sun/tools/javac/code/Symbol;
1 13 2 acount I
2 13 3 flags J
7 10 5 alenIdx I
MethodParameters:
Name Flags
sym
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 5
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 13
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:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$VarSymbol
astore 3
start local 3 2: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 5
start local 5 3: 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 7
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:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 5: 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 7
6: 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 7: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: 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
9: aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 7
goto 12
StackMap locals:
StackMap stack:
10: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Attribute$Compound
astore 6
start local 6 11: aload 0
aload 6
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeCompoundAttribute:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
end local 6 12: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
end local 5 end local 3 13: 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 1
14: return
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 params Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$VarSymbol;>;
0 15 2 retention Lcom/sun/tools/javac/code/Attribute$RetentionPolicy;
2 13 3 s Lcom/sun/tools/javac/code/Symbol$VarSymbol;
3 13 5 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$Compound;>;
5 7 6 a Lcom/sun/tools/javac/code/Attribute$Compound;
11 12 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.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: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.params:Lcom/sun/tools/javac/util/List;
ifnull 13
3: 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 5
goto 12
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.code.Symbol$MethodSymbol 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.code.Symbol$MethodSymbol 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.code.Symbol$MethodSymbol 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.code.Symbol$MethodSymbol 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.code.Symbol$MethodSymbol 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.code.Symbol$MethodSymbol 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/code/Symbol$MethodSymbol;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/code/Symbol$MethodSymbol;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 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
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
MethodParameters:
Name Flags
m
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=4, 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 0
aload 1
getfield com.sun.tools.javac.code.Attribute$Compound.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 2
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 5
getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 6
getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 8
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 7
getfield com.sun.tools.javac.code.Directive$OpensDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 9
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 8
getfield com.sun.tools.javac.code.Directive$UsesDirective.service:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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 enterInner(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.isCompound:()Z
ifeq 2
1: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unexpected intersection type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
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
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.complete:()V
3: goto 7
StackMap locals:
StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
4: astore 2
start local 2 5: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$CompletionFailure.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: aload 2
athrow
end local 2 7: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
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
ifne 8
return
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
ifnull 21
9: aload 1
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;
ifnull 21
10: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
ifnull 11
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 21
11: StackMap locals:
StackMap stack:
aload 0
aload 1
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;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
12: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
pop
13: aload 1
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 15
14: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
pop
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
ifnonnull 19
16: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
17: aload 0
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
putfield com.sun.tools.javac.jvm.ClassWriter.innerClassesQueue:Lcom/sun/tools/javac/util/ListBuffer;
18: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)I
pop
19: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
20: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClassesQueue:Lcom/sun/tools/javac/util/ListBuffer;
aload 1
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
21: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 22 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
5 7 2 ex Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
Exception table:
from to target type
2 3 4 Class com.sun.tools.javac.code.Symbol$CompletionFailure
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.innerClassesQueue: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
2: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClassesQueue: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 3: goto 24
4: StackMap locals: int com.sun.tools.javac.util.List
StackMap stack:
aload 2
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 3
start local 3 5: aload 3
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
6: aload 0
aload 3
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 7: iload 4
sipush 512
iand
ifeq 8
iload 4
sipush 1024
ior
i2c
istore 4
8: StackMap locals: com.sun.tools.javac.code.Symbol$ClassSymbol int
StackMap stack:
iload 4
sipush -2049
iand
i2c
istore 4
9: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpInnerClassModifiers:Z
ifeq 13
10: 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 11: aload 5
new java.lang.StringBuilder
dup
ldc "INNERCLASS "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
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
12: 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 13: 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 3
invokevirtual com.sun.tools.javac.jvm.Pool.get:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
14: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
15: 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.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 16
aload 3
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 16
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 3
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.jvm.Pool.get:(Ljava/lang/Object;)I
goto 17
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
16: iconst_0
17: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ClassSymbol int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
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;
19: aload 3
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 20
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 3
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.get:(Ljava/lang/Object;)I
goto 21
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
20: iconst_0
21: StackMap locals: com.sun.tools.javac.jvm.ClassWriter int com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ClassSymbol int
StackMap stack: com.sun.tools.javac.util.ByteBuffer int
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
22: 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 3 23: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
24: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 4
end local 2 25: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
26: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
1 27 1 alenIdx I
3 25 2 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
5 23 3 inner Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
7 23 4 flags C
11 13 5 pw Ljava/io/PrintWriter;
void writeBootstrapMethods();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=10, 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.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.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 13
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 java.util.Map$Entry
astore 2
start local 2 4: aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey
astore 4
start local 4 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue.mh:Lcom/sun/tools/javac/jvm/Pool$MethodHandle;
invokevirtual com.sun.tools.javac.jvm.Pool.get:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
6: aload 4
invokevirtual com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey.getUniqueArgs:()[Ljava/lang/Object;
astore 5
start local 5 7: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.databuf:Lcom/sun/tools/javac/util/ByteBuffer;
aload 5
arraylength
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
8: aload 5
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 12
StackMap locals: com.sun.tools.javac.jvm.ClassWriter int java.util.Map$Entry java.util.Iterator com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey java.lang.Object[] top int int java.lang.Object[]
StackMap stack:
9: aload 9
iload 7
aaload
astore 6
start local 6 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 6
invokevirtual com.sun.tools.javac.jvm.Pool.get:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 6 11: iinc 7 1
StackMap locals:
StackMap stack:
12: iload 7
iload 8
if_icmplt 9
end local 5 end local 4 end local 2 13: 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
14: aload 0
iload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
15: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
1 16 1 alenIdx I
4 13 2 entry Ljava/util/Map$Entry<Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsKey;Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsValue;>;
5 13 4 bsmKey Lcom/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsKey;
7 13 5 uniqueArgs [Ljava/lang/Object;
10 11 6 o Ljava/lang/Object;
void writeField(com.sun.tools.javac.code.Symbol$VarSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)V
flags: (0x0000)
Code:
stack=5, 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 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$VarSymbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.getConstValue:()Ljava/lang/Object;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(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
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs:(Lcom/sun/tools/javac/code/Symbol;)I
iadd
istore 4
16: aload 0
iload 3
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
17: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 18 1 v Lcom/sun/tools/javac/code/Symbol$VarSymbol;
1 18 2 flags I
4 6 3 pw Ljava/io/PrintWriter;
9 18 3 acountIdx I
10 18 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=5, 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
getfield com.sun.tools.javac.code.Symbol$MethodSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 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.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
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;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.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
ifeq 35
33: 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
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs:(Lcom/sun/tools/javac/code/Symbol;)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
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeParameterAttrs:(Lcom/sun/tools/javac/code/Symbol$MethodSymbol;)I
iadd
istore 4
38: StackMap locals:
StackMap stack:
aload 0
iload 3
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
39: 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 40 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 40 1 m Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
1 40 2 flags I
4 6 3 pw Ljava/io/PrintWriter;
9 40 3 acountIdx I
10 40 4 acount I
12 16 5 alenIdx I
17 40 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 95
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
ifle 95
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 66
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 64
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 10
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
59: aload 10
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
astore 11
start local 11 60: 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 0
aload 11
invokevirtual com.sun.tools.javac.jvm.ClassWriter.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
61: 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
62: 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 64
63: iinc 4 1
end local 11 end local 10 end local 8 64: 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 65: iinc 6 1
StackMap locals: com.sun.tools.javac.jvm.ClassWriter com.sun.tools.javac.jvm.Code int int int int int
StackMap stack:
66: iload 6
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 44
end local 6 67: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
68: iinc 3 1
69: iload 4
ifle 95
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.LocalVariableTypeTable:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeAttr:(Lcom/sun/tools/javac/util/Name;)I
istore 5
71: 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
72: iconst_0
istore 6
start local 6 73: iconst_0
istore 7
start local 7 74: goto 89
75: 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 76: aload 8
getfield com.sun.tools.javac.jvm.Code$LocalVar.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
astore 9
start local 9 77: 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 79
78: goto 88
79: 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 87
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:
80: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.Code$LocalVar$Range
astore 10
start local 10 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.start_pc: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 10
getfield com.sun.tools.javac.jvm.Code$LocalVar$Range.length:C
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 9
getfield com.sun.tools.javac.code.Symbol$VarSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
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.typeSig:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
85: 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
86: iinc 6 1
end local 10 87: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 80
end local 9 end local 8 88: 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:
89: iload 7
aload 1
getfield com.sun.tools.javac.jvm.Code.varBufferSize:I
if_icmplt 75
end local 7 90: iload 6
iload 4
if_icmpne 91
iconst_1
goto 92
StackMap locals:
StackMap stack:
91: iconst_0
StackMap locals:
StackMap stack: int
92: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
93: aload 0
iload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
94: iinc 3 1
end local 6 end local 5 end local 4 95: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.jvm.Code.stackMapBufferSize:I
ifle 101
96: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 97
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
97: 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 98: aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeStackMap:(Lcom/sun/tools/javac/jvm/Code;)V
99: aload 0
iload 4
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
100: iinc 3 1
end local 4 101: 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
102: aload 0
iload 2
iload 3
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
103: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 104 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 104 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 104 2 acountIdx I
16 104 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 95 4 nGenericVars I
41 95 5 alenIdx I
43 67 6 i I
45 65 7 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
47 64 8 r Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
58 64 10 sym Lcom/sun/tools/javac/code/Symbol$VarSymbol;
60 64 11 vartype Lcom/sun/tools/javac/code/Type;
73 95 6 count I
74 90 7 i I
76 88 8 var Lcom/sun/tools/javac/jvm/Code$LocalVar;
77 88 9 sym Lcom/sun/tools/javac/code/Symbol$VarSymbol;
81 87 10 r Lcom/sun/tools/javac/jvm/Code$LocalVar$Range;
98 101 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 1
invokevirtual com.sun.tools.javac.code.Type.isCompound:()Z
ifne 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 37
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: 36
10: 20
11: 20
12: 36
13: 36
14: 36
15: 24
16: 36
17: 36
18: 36
19: 17
20: 36
21: 36
22: 36
23: 36
24: 28
25: 31
default: 36
}
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 37
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 37
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 37
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 37
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 37
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 1
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
23: goto 37
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;
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
25: 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
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.pool:Lcom/sun/tools/javac/jvm/Pool;
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 com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
27: goto 37
28: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 29
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "uninit_this"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
29: 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
30: goto 37
31: StackMap locals:
StackMap stack:
aload 1
checkcast com.sun.tools.javac.jvm.UninitializedType
astore 2
start local 2 32: 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
33: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.debugstackmap:Z
ifeq 34
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
34: 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 35: goto 37
36: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
37: StackMap locals:
StackMap stack:
return
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 t Lcom/sun/tools/javac/code/Type;
32 35 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=7, 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
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 29
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 6
24: aload 5
ifnull 28
25: aload 5
invokevirtual java.io.OutputStream.close:()V
26: aload 4
invokeinterface javax.tools.JavaFileObject.delete:()Z
pop
27: aconst_null
astore 4
28: StackMap locals: java.lang.Throwable
StackMap stack:
aload 6
athrow
29: StackMap locals:
StackMap stack:
aload 5
ifnull 33
30: aload 5
invokevirtual java.io.OutputStream.close:()V
31: aload 4
invokeinterface javax.tools.JavaFileObject.delete:()Z
pop
32: aconst_null
astore 4
33: 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 34 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 34 1 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
3 34 2 name Ljava/lang/String;
8 9 3 outLocn Ljavax/tools/JavaFileManager$Location;
10 34 3 outLocn Ljavax/tools/JavaFileManager$Location;
7 8 4 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
16 34 4 outFile Ljavax/tools/JavaFileObject;
17 34 5 out Ljava/io/OutputStream;
Exception table:
from to target type
17 23 23 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.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.reset:()V
6: aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
putfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
7: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
8: aload 0
aconst_null
putfield com.sun.tools.javac.jvm.ClassWriter.innerClassesQueue:Lcom/sun/tools/javac/util/ListBuffer;
9: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.sun.tools.javac.jvm.ClassWriter.bootstrapMethods:Ljava/util/Map;
10: 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 11: 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 12: 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 13: 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 16
14: ldc 32768
istore 6
start local 6 15: goto 20
end local 6 16: 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 17: iload 6
iconst_4
iand
ifeq 18
iload 6
iconst_1
ior
istore 6
18: StackMap locals: int
StackMap stack:
iload 6
sipush 32273
iand
sipush -2049
iand
istore 6
19: iload 6
sipush 512
iand
ifne 20
iload 6
bipush 32
ior
istore 6
20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.dumpClassModifiers:Z
ifeq 25
21: 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 22: aload 7
invokevirtual java.io.PrintWriter.println:()V
23: 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
24: 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 25: 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
26: 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 30
27: 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 28: 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.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
end local 7 29: goto 31
30: 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 2
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
31: 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 32
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 3
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
goto 33
StackMap locals:
StackMap stack: com.sun.tools.javac.util.ByteBuffer
32: 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
33: invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
34: 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
35: aload 4
astore 7
start local 7 36: goto 39
37: 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.pool:Lcom/sun/tools/javac/jvm/Pool;
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;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
38: aload 7
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 7
StackMap locals:
StackMap stack:
39: aload 7
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 37
end local 7 40: iconst_0
istore 7
start local 7 41: iconst_0
istore 8
start local 8 42: 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 50
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:
43: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol
astore 9
start local 9 44: 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: 48
4: 45
5: 46
default: 49
}
45: 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 50
46: StackMap locals:
StackMap stack:
aload 9
invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
ldc 137438953472
land
lconst_0
lcmp
ifne 50
iinc 8 1
47: goto 50
48: StackMap locals:
StackMap stack:
aload 0
aload 9
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.jvm.ClassWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
goto 50
49: StackMap locals:
StackMap stack:
invokestatic com.sun.tools.javac.util.Assert.error:()V
end local 9 50: 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 43
51: aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.trans_local:Lcom/sun/tools/javac/util/List;
ifnull 56
52: 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 55
StackMap locals:
StackMap stack:
53: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 9
start local 9 54: aload 0
aload 9
invokevirtual com.sun.tools.javac.jvm.ClassWriter.enterInner:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
end local 9 55: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 53
56: 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
57: 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
58: 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
59: 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
60: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.beginAttrs:()I
istore 9
start local 9 61: iconst_0
istore 10
start local 10 62: aload 5
invokevirtual com.sun.tools.javac.util.List.length:()I
ifne 64
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 64
63: iconst_0
goto 65
StackMap locals: int int
StackMap stack:
64: iconst_1
StackMap locals:
StackMap stack: int
65: istore 11
start local 11 66: aload 4
astore 12
start local 12 67: goto 72
68: 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 69
iconst_1
goto 70
StackMap locals:
StackMap stack:
69: iconst_0
StackMap locals:
StackMap stack: int
70: istore 11
71: aload 12
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 12
StackMap locals:
StackMap stack:
72: iload 11
ifne 73
aload 12
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 68
end local 12 73: StackMap locals:
StackMap stack:
iload 11
ifeq 86
74: 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 75: aload 5
invokevirtual com.sun.tools.javac.util.List.length:()I
ifeq 76
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
aload 5
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.assembleParamsSig:(Lcom/sun/tools/javac/util/List;)V
76: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
aload 3
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.assembleSig:(Lcom/sun/tools/javac/code/Type;)V
77: aload 4
astore 13
start local 13 78: goto 81
79: StackMap locals: com.sun.tools.javac.util.List
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
aload 13
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.assembleSig:(Lcom/sun/tools/javac/code/Type;)V
80: aload 13
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 13
StackMap locals:
StackMap stack:
81: aload 13
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 79
end local 13 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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.toName:()Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
83: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.signatureGen:Lcom/sun/tools/javac/jvm/ClassWriter$CWSignatureGenerator;
invokevirtual com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator.reset:()V
84: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
85: iinc 10 1
end local 12 86: StackMap locals:
StackMap stack:
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
ifnull 92
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.emitSourceFile:Z
ifeq 92
87: 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 88: 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 89: 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$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
90: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
91: iinc 10 1
end local 13 end local 12 92: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.genCrt:Z
ifeq 101
93: 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 94: 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$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
95: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
96: iinc 10 1
97: 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
98: 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$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
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.Pool.put:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
99: aload 0
iload 12
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttr:(I)V
100: iinc 10 1
end local 12 101: 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
102: 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
103: 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
104: 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
105: 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 108
106: 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
107: 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
108: 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
109: 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
110: 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 114
111: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
iconst_0
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
112: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.poolbuf:Lcom/sun/tools/javac/util/ByteBuffer;
bipush 53
invokevirtual com.sun.tools.javac.util.ByteBuffer.appendChar:(I)V
113: goto 116
114: 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
115: 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
116: StackMap locals:
StackMap stack:
aload 0
aload 2
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writePool:(Lcom/sun/tools/javac/jvm/Pool;)V
117: aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.innerClasses:Ljava/util/Set;
ifnull 120
118: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeInnerClasses:()V
119: iinc 10 1
120: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.ClassWriter.bootstrapMethods:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ifne 123
121: aload 0
invokevirtual com.sun.tools.javac.jvm.ClassWriter.writeBootstrapMethods:()V
122: iinc 10 1
123: StackMap locals:
StackMap stack:
aload 0
iload 9
iload 10
invokevirtual com.sun.tools.javac.jvm.ClassWriter.endAttrs:(II)V
124: 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.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 com.sun.tools.javac.util.ByteBuffer.appendBytes:([BII)V
125: 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
126: aload 0
aload 2
aconst_null
dup_x1
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.pool:Lcom/sun/tools/javac/jvm/Pool;
putfield com.sun.tools.javac.jvm.ClassWriter.pool:Lcom/sun/tools/javac/jvm/Pool;
127: 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 128 0 this Lcom/sun/tools/javac/jvm/ClassWriter;
0 128 1 out Ljava/io/OutputStream;
0 128 2 c Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
11 128 3 supertype Lcom/sun/tools/javac/code/Type;
12 128 4 interfaces Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
13 128 5 typarams Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
15 16 6 flags I
17 128 6 flags I
22 25 7 pw Ljava/io/PrintWriter;
28 29 7 unnamed Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
36 40 7 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
41 128 7 fieldsCount I
42 128 8 methodsCount I
44 50 9 sym Lcom/sun/tools/javac/code/Symbol;
54 55 9 local Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
61 128 9 acountIdx I
62 128 10 acount I
66 128 11 sigReq Z
67 73 12 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
75 86 12 alenIdx I
78 82 13 l Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
88 92 12 alenIdx I
89 92 13 simpleName Ljava/lang/String;
94 101 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
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 16
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 17
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 13
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.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 8
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.HIDDEN:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.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.Kinds$Kind.MDL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 7
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.MISSING_ENCL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 12
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.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_5
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.NIL:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_1
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.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_2
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.POLY:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.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.Kinds$Kind.STATICERR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 11
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.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_3
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.VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
iconst_4
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.WRONG_MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 15
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_MTHS:Lcom/sun/tools/javac/code/Kinds$Kind;
invokevirtual com.sun.tools.javac.code.Kinds$Kind.ordinal:()I
bipush 14
iastore
51: goto 53
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
52: pop
StackMap locals:
StackMap stack:
53: 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
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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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.pool:Lcom/sun/tools/javac/jvm/Pool;
aload 1
invokevirtual com.sun.tools.javac.jvm.Pool.put:(Ljava/lang/Object;)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$CWSignatureGenerator 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 CompletionFailure = com.sun.tools.javac.code.Symbol$CompletionFailure of com.sun.tools.javac.code.Symbol
public DelegatedSymbol = com.sun.tools.javac.code.Symbol$DelegatedSymbol of com.sun.tools.javac.code.Symbol
public DynamicMethodSymbol = com.sun.tools.javac.code.Symbol$DynamicMethodSymbol 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 abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
public 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 UniqueType = com.sun.tools.javac.code.Types$UniqueType of com.sun.tools.javac.code.Types
public NameAndType = com.sun.tools.javac.jvm.ClassFile$NameAndType of com.sun.tools.javac.jvm.ClassFile
AttributeWriter = com.sun.tools.javac.jvm.ClassWriter$AttributeWriter of com.sun.tools.javac.jvm.ClassWriter
private CWSignatureGenerator = com.sun.tools.javac.jvm.ClassWriter$CWSignatureGenerator 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
DynamicMethod = com.sun.tools.javac.jvm.Pool$DynamicMethod of com.sun.tools.javac.jvm.Pool
BootstrapMethodsKey = com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey of com.sun.tools.javac.jvm.Pool$DynamicMethod
BootstrapMethodsValue = com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue of com.sun.tools.javac.jvm.Pool$DynamicMethod
Method = com.sun.tools.javac.jvm.Pool$Method of com.sun.tools.javac.jvm.Pool
public MethodHandle = com.sun.tools.javac.jvm.Pool$MethodHandle of com.sun.tools.javac.jvm.Pool
Variable = com.sun.tools.javac.jvm.Pool$Variable of com.sun.tools.javac.jvm.Pool
public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
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 Entry = java.util.Map$Entry of java.util.Map
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject