public class sun.jvm.hotspot.tools.jcore.ClassWriter implements sun.jvm.hotspot.runtime.ClassConstants
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.tools.jcore.ClassWriter
super_class: java.lang.Object
{
public static final boolean DEBUG;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
protected sun.jvm.hotspot.oops.InstanceKlass klass;
descriptor: Lsun/jvm/hotspot/oops/InstanceKlass;
flags: (0x0004) ACC_PROTECTED
protected java.io.DataOutputStream dos;
descriptor: Ljava/io/DataOutputStream;
flags: (0x0004) ACC_PROTECTED
protected sun.jvm.hotspot.oops.ConstantPool cpool;
descriptor: Lsun/jvm/hotspot/oops/ConstantPool;
flags: (0x0004) ACC_PROTECTED
protected java.util.Map<java.lang.String, java.lang.Short> classToIndex;
descriptor: Ljava/util/Map;
flags: (0x0004) ACC_PROTECTED
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Short;>;
protected java.util.Map<java.lang.String, java.lang.Short> utf8ToIndex;
descriptor: Ljava/util/Map;
flags: (0x0004) ACC_PROTECTED
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Short;>;
protected short _sourceFileIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _innerClassesIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _syntheticIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _deprecatedIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _constantValueIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _codeIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _exceptionsIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _lineNumberTableIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _localVariableTableIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected short _signatureIndex;
descriptor: S
flags: (0x0004) ACC_PROTECTED
protected void debugMessage(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 1
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 2 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
protected static int (int);
descriptor: (I)I
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
bipush 16
ishr
ldc 65535
iand
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 val I
MethodParameters:
Name Flags
val
protected static int (int);
descriptor: (I)I
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
ldc 65535
iand
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 val I
MethodParameters:
Name Flags
val
public void <init>(sun.jvm.hotspot.oops.InstanceKlass, java.io.OutputStream);
descriptor: (Lsun/jvm/hotspot/oops/InstanceKlass;Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield sun.jvm.hotspot.tools.jcore.ClassWriter.classToIndex:Ljava/util/Map;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
3: aload 0
aload 1
putfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
4: aload 0
new java.io.DataOutputStream
dup
aload 2
invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
putfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
5: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getConstants:()Lsun/jvm/hotspot/oops/ConstantPool;
putfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 7 1 kls Lsun/jvm/hotspot/oops/InstanceKlass;
0 7 2 os Ljava/io/OutputStream;
MethodParameters:
Name Flags
kls
os
public void write();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
ldc -889275714
invokevirtual java.io.DataOutputStream.writeInt:(I)V
1: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeVersion:()V
2: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeConstantPool:()V
3: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeClassAccessFlags:()V
4: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeThisClass:()V
5: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeSuperClass:()V
6: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeInterfaces:()V
7: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeFields:()V
8: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeMethods:()V
9: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeClassAttributes:()V
10: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
invokevirtual java.io.DataOutputStream.flush:()V
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
Exceptions:
throws java.io.IOException
protected void writeVersion();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.minorVersion:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.majorVersion:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
Exceptions:
throws java.io.IOException
protected void writeIndex(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifne 1
new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 1
invokevirtual java.io.DataOutputStream.writeShort:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 3 1 index I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
index
protected void writeConstantPool();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=19, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getTags:()Lsun/jvm/hotspot/utilities/U1Array;
astore 1
start local 1 1: aload 1
invokevirtual sun.jvm.hotspot.utilities.U1Array.length:()I
i2l
lstore 2
start local 2 2: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
lload 2
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
3: iconst_0
istore 4
start local 4 4: iconst_1
istore 4
goto 14
5: StackMap locals: sun.jvm.hotspot.utilities.U1Array long int
StackMap stack:
aload 1
iload 4
invokevirtual sun.jvm.hotspot.utilities.U1Array.at:(I)B
istore 5
start local 5 6: iload 5
iconst_1
if_icmpne 10
7: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getSymbolAt:(J)Lsun/jvm/hotspot/oops/Symbol;
astore 6
start local 6 8: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
aload 6
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
iload 4
i2s
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 6 9: goto 13
10: StackMap locals: int
StackMap stack:
iload 5
iconst_5
if_icmpeq 12
11: iload 5
bipush 6
if_icmpne 13
12: StackMap locals:
StackMap stack:
iinc 4 1
end local 5 13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
i2l
lload 2
lcmp
iflt 5
15: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "SourceFile"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 5
start local 5 16: aload 0
aload 5
ifnull 17
aload 5
invokevirtual java.lang.Short.shortValue:()S
goto 18
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
17: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
18: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._sourceFileIndex:S
19: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "InnerClasses"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 6
start local 6 20: aload 0
aload 6
ifnull 21
aload 6
invokevirtual java.lang.Short.shortValue:()S
goto 22
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
21: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
22: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._innerClassesIndex:S
23: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "ConstantValue"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 7
start local 7 24: aload 0
aload 7
ifnull 26
25: aload 7
invokevirtual java.lang.Short.shortValue:()S
goto 27
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
26: iconst_0
27: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
putfield sun.jvm.hotspot.tools.jcore.ClassWriter._constantValueIndex:S
28: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "Synthetic"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 8
start local 8 29: aload 0
aload 8
ifnull 30
aload 8
invokevirtual java.lang.Short.shortValue:()S
goto 31
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
30: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
31: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._syntheticIndex:S
32: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "Deprecated"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 9
start local 9 33: aload 0
aload 9
ifnull 34
aload 9
invokevirtual java.lang.Short.shortValue:()S
goto 35
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
34: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
35: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._deprecatedIndex:S
36: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "Code"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 10
start local 10 37: aload 0
aload 10
ifnull 38
aload 10
invokevirtual java.lang.Short.shortValue:()S
goto 39
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
38: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
39: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._codeIndex:S
40: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "Exceptions"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 11
start local 11 41: aload 0
aload 11
ifnull 42
aload 11
invokevirtual java.lang.Short.shortValue:()S
goto 43
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
42: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
43: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._exceptionsIndex:S
44: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "LineNumberTable"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 12
start local 12 45: aload 0
aload 12
ifnull 47
46: aload 12
invokevirtual java.lang.Short.shortValue:()S
goto 48
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
47: iconst_0
48: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
putfield sun.jvm.hotspot.tools.jcore.ClassWriter._lineNumberTableIndex:S
49: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "LocalVariableTable"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 13
start local 13 50: aload 0
aload 13
ifnull 52
51: aload 13
invokevirtual java.lang.Short.shortValue:()S
goto 53
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
52: iconst_0
53: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
putfield sun.jvm.hotspot.tools.jcore.ClassWriter._localVariableTableIndex:S
54: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
ldc "Signature"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 14
start local 14 55: aload 0
aload 14
ifnull 56
aload 14
invokevirtual java.lang.Short.shortValue:()S
goto 57
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter
56: iconst_0
StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.utilities.U1Array long int java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short java.lang.Short
StackMap stack: sun.jvm.hotspot.tools.jcore.ClassWriter int
57: putfield sun.jvm.hotspot.tools.jcore.ClassWriter._signatureIndex:S
58: iconst_1
istore 4
goto 135
59: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual sun.jvm.hotspot.utilities.U1Array.at:(I)B
istore 15
start local 15 60: iload 15
lookupswitch { // 18
1: 61
2: 66
3: 67
4: 70
5: 73
6: 78
7: 82
8: 88
9: 93
10: 93
11: 93
12: 100
15: 107
16: 114
17: 119
18: 126
100: 82
103: 82
default: 133
}
61: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
62: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getSymbolAt:(J)Lsun/jvm/hotspot/oops/Symbol;
astore 16
start local 16 63: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 16
invokevirtual sun.jvm.hotspot.oops.Symbol.getLength:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
64: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 16
invokevirtual sun.jvm.hotspot.oops.Symbol.asByteArray:()[B
invokevirtual java.io.DataOutputStream.write:([B)V
65: goto 134
end local 16 66: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Unicode constant!"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
67: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
68: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
invokevirtual java.io.DataOutputStream.writeInt:(I)V
69: goto 134
70: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
71: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getFloatAt:(J)F
invokevirtual java.io.DataOutputStream.writeFloat:(F)V
72: goto 134
73: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
74: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getLongAt:(J)J
lstore 16
start local 16 75: iinc 4 1
76: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
lload 16
invokevirtual java.io.DataOutputStream.writeLong:(J)V
77: goto 134
end local 16 78: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
79: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getDoubleAt:(J)D
invokevirtual java.io.DataOutputStream.writeDouble:(D)V
80: iinc 4 1
81: goto 134
82: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
bipush 7
invokevirtual java.io.DataOutputStream.writeByte:(I)V
83: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getKlassNameAt:(I)Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
astore 16
start local 16 84: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
aload 16
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 17
start local 17 85: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.classToIndex:Ljava/util/Map;
aload 16
iload 4
i2s
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
86: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 17
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
87: goto 134
end local 17 end local 16 88: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
89: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getUnresolvedStringAt:(I)Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
astore 16
start local 16 90: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
aload 16
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 17
start local 17 91: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 17
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
92: goto 134
end local 17 end local 16 93: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
94: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 95: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractLowShortFromInt:(I)I
i2s
istore 17
start local 17 96: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractHighShortFromInt:(I)I
i2s
istore 18
start local 18 97: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeShort:(I)V
98: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 18
invokevirtual java.io.DataOutputStream.writeShort:(I)V
99: goto 134
end local 18 end local 17 end local 16 100: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
101: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 102: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractLowShortFromInt:(I)I
i2s
istore 17
start local 17 103: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractHighShortFromInt:(I)I
i2s
istore 18
start local 18 104: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeShort:(I)V
105: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 18
invokevirtual java.io.DataOutputStream.writeShort:(I)V
106: goto 134
end local 18 end local 17 end local 16 107: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
108: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 109: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractLowShortFromInt:(I)I
i2b
istore 17
start local 17 110: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractHighShortFromInt:(I)I
i2s
istore 18
start local 18 111: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeByte:(I)V
112: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 18
invokevirtual java.io.DataOutputStream.writeShort:(I)V
113: goto 134
end local 18 end local 17 end local 16 114: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
115: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 116: iload 16
i2s
istore 17
start local 17 117: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeShort:(I)V
118: goto 134
end local 17 end local 16 119: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
120: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 121: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractLowShortFromInt:(I)I
i2s
istore 17
start local 17 122: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractHighShortFromInt:(I)I
i2s
istore 18
start local 18 123: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeShort:(I)V
124: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 18
invokevirtual java.io.DataOutputStream.writeShort:(I)V
125: goto 134
end local 18 end local 17 end local 16 126: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 15
invokevirtual java.io.DataOutputStream.writeByte:(I)V
127: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 4
i2l
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getIntAt:(J)I
istore 16
start local 16 128: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractLowShortFromInt:(I)I
i2s
istore 17
start local 17 129: iload 16
invokestatic sun.jvm.hotspot.tools.jcore.ClassWriter.extractHighShortFromInt:(I)I
i2s
istore 18
start local 18 130: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 17
invokevirtual java.io.DataOutputStream.writeShort:(I)V
131: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 18
invokevirtual java.io.DataOutputStream.writeShort:(I)V
132: goto 134
end local 18 end local 17 end local 16 133: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Unknown tag: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 15
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 15 134: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
135: iload 4
i2l
lload 2
lcmp
iflt 59
136: return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 137 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 137 1 tags Lsun/jvm/hotspot/utilities/U1Array;
2 137 2 len J
4 137 4 ci I
6 13 5 cpConstType I
8 9 6 sym Lsun/jvm/hotspot/oops/Symbol;
16 137 5 sourceFileIndex Ljava/lang/Short;
20 137 6 innerClassesIndex Ljava/lang/Short;
24 137 7 constantValueIndex Ljava/lang/Short;
29 137 8 syntheticIndex Ljava/lang/Short;
33 137 9 deprecatedIndex Ljava/lang/Short;
37 137 10 codeIndex Ljava/lang/Short;
41 137 11 exceptionsIndex Ljava/lang/Short;
45 137 12 lineNumberTableIndex Ljava/lang/Short;
50 137 13 localVariableTableIndex Ljava/lang/Short;
55 137 14 signatureIdx Ljava/lang/Short;
60 134 15 cpConstType I
63 66 16 sym Lsun/jvm/hotspot/oops/Symbol;
75 78 16 l J
84 88 16 klassName Ljava/lang/String;
85 88 17 s Ljava/lang/Short;
90 93 16 str Ljava/lang/String;
91 93 17 s Ljava/lang/Short;
95 100 16 value I
96 100 17 klassIndex S
97 100 18 nameAndTypeIndex S
102 107 16 value I
103 107 17 nameIndex S
104 107 18 signatureIndex S
109 114 16 value I
110 114 17 refKind B
111 114 18 memberIndex S
116 119 16 value I
117 119 17 refIndex S
121 126 16 value I
122 126 17 bsmIndex S
123 126 18 nameAndTypeIndex S
128 133 16 value I
129 133 17 bsmIndex S
130 133 18 nameAndTypeIndex S
Exceptions:
throws java.io.IOException
protected void writeClassAccessFlags();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getAccessFlags:()J
ldc 30257
land
l2i
istore 1
start local 1 1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 1
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 3 1 flags I
Exceptions:
throws java.io.IOException
protected void writeThisClass();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
astore 1
start local 1 1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.classToIndex:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 2
start local 2 2: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 2
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 4 1 klassName Ljava/lang/String;
2 4 2 index Ljava/lang/Short;
Exceptions:
throws java.io.IOException
protected void writeSuperClass();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getSuper:()Lsun/jvm/hotspot/oops/Klass;
astore 1
start local 1 1: aload 1
ifnull 6
2: aload 1
invokevirtual sun.jvm.hotspot.oops.Klass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.classToIndex:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 3
start local 3 4: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 3
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
end local 3 end local 2 5: goto 7
6: StackMap locals: sun.jvm.hotspot.oops.Klass
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_0
invokevirtual java.io.DataOutputStream.writeShort:(I)V
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 8 1 superKlass Lsun/jvm/hotspot/oops/Klass;
3 5 2 superName Ljava/lang/String;
4 5 3 index Ljava/lang/Short;
Exceptions:
throws java.io.IOException
protected void writeInterfaces();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getLocalInterfaces:()Lsun/jvm/hotspot/utilities/KlassArray;
astore 1
start local 1 1: aload 1
invokevirtual sun.jvm.hotspot.utilities.KlassArray.length:()I
istore 2
start local 2 2: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 2
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
3: iconst_0
istore 3
start local 3 4: goto 9
5: StackMap locals: sun.jvm.hotspot.utilities.KlassArray int int
StackMap stack:
aload 1
iload 3
invokevirtual sun.jvm.hotspot.utilities.KlassArray.getAt:(I)Lsun/jvm/hotspot/oops/Klass;
astore 4
start local 4 6: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.classToIndex:Ljava/util/Map;
aload 4
invokevirtual sun.jvm.hotspot.oops.Klass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 5
start local 5 7: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 5
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
end local 5 end local 4 8: iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 2
if_icmplt 5
end local 3 10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 11 1 interfaces Lsun/jvm/hotspot/utilities/KlassArray;
2 11 2 len I
4 10 3 i I
6 8 4 k Lsun/jvm/hotspot/oops/Klass;
7 8 5 index Ljava/lang/Short;
Exceptions:
throws java.io.IOException
protected void writeFields();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=10, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getJavaFieldsCount:()I
istore 1
start local 1 1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 1
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
2: iconst_0
istore 2
start local 2 3: goto 32
4: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
iload 2
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldAccessFlags:(I)S
istore 3
start local 3 5: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 3
sipush 20703
iand
invokevirtual java.io.DataOutputStream.writeShort:(I)V
6: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
iload 2
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldNameIndex:(I)S
istore 4
start local 4 7: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 4
invokevirtual java.io.DataOutputStream.writeShort:(I)V
8: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
iload 2
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldSignatureIndex:(I)S
istore 5
start local 5 9: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 5
invokevirtual java.io.DataOutputStream.writeShort:(I)V
10: iconst_0
istore 6
start local 6 11: aload 0
iload 3
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.hasSyntheticAttribute:(S)Z
istore 7
start local 7 12: iload 7
ifeq 14
13: iload 6
iconst_1
iadd
i2s
istore 6
14: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter int int int int int int int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
iload 2
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldInitialValueIndex:(I)S
istore 8
start local 8 15: iload 8
ifeq 17
16: iload 6
iconst_1
iadd
i2s
istore 6
17: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
iload 2
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldGenericSignatureIndex:(I)S
istore 9
start local 9 18: iload 9
ifeq 20
19: iload 6
iconst_1
iadd
i2s
istore 6
20: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 6
invokevirtual java.io.DataOutputStream.writeShort:(I)V
21: iload 7
ifeq 23
22: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeSynthetic:()V
23: StackMap locals:
StackMap stack:
iload 8
ifeq 27
24: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._constantValueIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
25: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_2
invokevirtual java.io.DataOutputStream.writeInt:(I)V
26: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 8
invokevirtual java.io.DataOutputStream.writeShort:(I)V
27: StackMap locals:
StackMap stack:
iload 9
ifeq 31
28: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._signatureIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
29: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_2
invokevirtual java.io.DataOutputStream.writeInt:(I)V
30: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 9
invokevirtual java.io.DataOutputStream.writeShort:(I)V
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 31: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter int int
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
32: iload 2
iload 1
if_icmplt 4
end local 2 33: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 34 1 javaFieldsCount I
3 33 2 index I
5 31 3 accessFlags S
7 31 4 nameIndex S
9 31 5 signatureIndex S
11 31 6 fieldAttributeCount S
12 31 7 hasSyn Z
15 31 8 initvalIndex S
18 31 9 genSigIndex S
Exceptions:
throws java.io.IOException
protected boolean isSynthetic(short);
descriptor: (S)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 4096
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 2 1 accessFlags S
MethodParameters:
Name Flags
accessFlags
protected boolean hasSyntheticAttribute(short);
descriptor: (S)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.isSynthetic:(S)Z
ifeq 1
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._syntheticIndex:S
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 2 1 accessFlags S
MethodParameters:
Name Flags
accessFlags
protected void writeSynthetic();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._syntheticIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_0
invokevirtual java.io.DataOutputStream.writeInt:(I)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
Exceptions:
throws java.io.IOException
protected void writeMethods();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getMethods:()Lsun/jvm/hotspot/utilities/MethodArray;
astore 1
start local 1 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 10
4: StackMap locals: sun.jvm.hotspot.utilities.MethodArray java.util.ArrayList int
StackMap stack:
aload 1
iload 3
invokevirtual sun.jvm.hotspot.utilities.MethodArray.at:(I)Lsun/jvm/hotspot/oops/Method;
astore 4
start local 4 5: aload 4
invokevirtual sun.jvm.hotspot.oops.Method.getAccessFlags:()J
lstore 5
start local 5 6: lload 5
ldc 4161
lcmp
ifne 8
7: goto 9
8: StackMap locals: sun.jvm.hotspot.oops.Method long
StackMap stack:
aload 2
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 4 9: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
aload 1
invokevirtual sun.jvm.hotspot.utilities.MethodArray.length:()I
if_icmplt 4
end local 3 11: aload 2
invokevirtual java.util.ArrayList.size:()I
istore 3
start local 3 12: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 3
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
13: iconst_0
istore 4
start local 4 14: goto 17
15: StackMap locals: int
StackMap stack:
aload 0
aload 2
iload 4
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast sun.jvm.hotspot.oops.Method
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeMethod:(Lsun/jvm/hotspot/oops/Method;)V
16: iinc 4 1
StackMap locals:
StackMap stack:
17: iload 4
iload 3
if_icmplt 15
end local 4 18: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 19 1 methods Lsun/jvm/hotspot/utilities/MethodArray;
2 19 2 valid_methods Ljava/util/ArrayList<Lsun/jvm/hotspot/oops/Method;>;
3 11 3 i I
5 9 4 m Lsun/jvm/hotspot/oops/Method;
6 9 5 accessFlags J
12 19 3 len I
14 18 4 m I
Exceptions:
throws java.io.IOException
protected void writeMethod(sun.jvm.hotspot.oops.Method);
descriptor: (Lsun/jvm/hotspot/oops/Method;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=24, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getAccessFlags:()J
lstore 2
start local 2 1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
lload 2
ldc 7679
land
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
2: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getNameIndex:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
3: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getSignatureIndex:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
4: lload 2
ldc 256
land
lconst_0
lcmp
ifeq 5
iconst_1
goto 6
StackMap locals: long
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: lload 2
ldc 1024
land
lconst_0
lcmp
ifeq 8
iconst_1
goto 9
StackMap locals: int
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 5
start local 5 10: iconst_0
istore 6
start local 6 11: aload 0
lload 2
l2i
i2s
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.hasSyntheticAttribute:(S)Z
istore 7
start local 7 12: iload 7
ifeq 14
13: iload 6
iconst_1
iadd
i2s
istore 6
14: StackMap locals: int int int
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.hasCheckedExceptions:()Z
istore 8
start local 8 15: iload 8
ifeq 17
16: iload 6
iconst_1
iadd
i2s
istore 6
17: StackMap locals: int
StackMap stack:
iload 4
ifne 18
iload 5
ifne 18
iconst_1
goto 19
StackMap locals:
StackMap stack:
18: iconst_0
StackMap locals:
StackMap stack: int
19: istore 9
start local 9 20: iload 9
ifeq 22
21: iload 6
iconst_1
iadd
i2s
istore 6
22: StackMap locals: int
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getGenericSignature:()Lsun/jvm/hotspot/oops/Symbol;
ifnull 23
iconst_1
goto 24
StackMap locals:
StackMap stack:
23: iconst_0
StackMap locals:
StackMap stack: int
24: istore 10
start local 10 25: iload 10
ifeq 27
26: iload 6
iconst_1
iadd
i2s
istore 6
27: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 6
invokevirtual java.io.DataOutputStream.writeShort:(I)V
28: iload 7
ifeq 30
29: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeSynthetic:()V
30: StackMap locals:
StackMap stack:
iload 9
ifeq 115
31: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getByteCode:()[B
astore 11
start local 11 32: iconst_0
istore 12
start local 12 33: bipush 8
34: aload 11
arraylength
35: iadd
36: iconst_2
37: iadd
38: iconst_2
39: iadd
istore 13
start local 13 40: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.hasExceptionTable:()Z
istore 14
start local 14 41: aconst_null
astore 15
start local 15 42: iconst_0
istore 16
start local 16 43: iload 14
ifeq 49
44: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getExceptionTable:()[Lsun/jvm/hotspot/oops/ExceptionTableElement;
astore 15
45: aload 15
arraylength
istore 16
46: iload 13
iload 16
47: bipush 8
48: imul
iadd
istore 13
49: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.oops.Method long int int int int int int int byte[] int int int sun.jvm.hotspot.oops.ExceptionTableElement[] int
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.hasLineNumberTable:()Z
istore 17
start local 17 50: aconst_null
astore 18
start local 18 51: iconst_0
istore 19
start local 19 52: iload 17
ifeq 61
53: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getLineNumberTable:()[Lsun/jvm/hotspot/oops/LineNumberTableElement;
astore 18
54: iconst_2
55: aload 18
arraylength
iconst_4
imul
56: iadd
istore 19
57: iload 13
bipush 6
58: iload 19
59: iadd
iadd
istore 13
60: iload 12
iconst_1
iadd
i2s
istore 12
61: StackMap locals: int sun.jvm.hotspot.oops.LineNumberTableElement[] int
StackMap stack:
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.hasLocalVariableTable:()Z
istore 20
start local 20 62: aconst_null
astore 21
start local 21 63: iconst_0
istore 22
start local 22 64: iload 20
ifeq 74
65: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getLocalVariableTable:()[Lsun/jvm/hotspot/oops/LocalVariableTableElement;
astore 21
66: iconst_2
67: aload 21
arraylength
bipush 10
imul
68: iadd
69: istore 22
70: iload 13
bipush 6
71: iload 22
72: iadd
iadd
istore 13
73: iload 12
iconst_1
iadd
i2s
istore 12
74: StackMap locals: int sun.jvm.hotspot.oops.LocalVariableTableElement[] int
StackMap stack:
aload 0
aload 1
aload 11
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.rewriteByteCode:(Lsun/jvm/hotspot/oops/Method;[B)V
75: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._codeIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
76: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 13
invokevirtual java.io.DataOutputStream.writeInt:(I)V
77: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getMaxStack:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
78: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getMaxLocals:()J
l2i
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
79: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 11
arraylength
invokevirtual java.io.DataOutputStream.writeInt:(I)V
80: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 11
invokevirtual java.io.DataOutputStream.write:([B)V
81: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 16
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
82: iload 16
ifeq 91
83: iconst_0
istore 23
start local 23 84: goto 90
85: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 15
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getStartPC:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
86: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 15
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getEndPC:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
87: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 15
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getHandlerPC:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
88: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 15
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.ExceptionTableElement.getCatchTypeIndex:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
89: iinc 23 1
StackMap locals:
StackMap stack:
90: iload 23
iload 16
if_icmplt 85
end local 23 91: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 12
invokevirtual java.io.DataOutputStream.writeShort:(I)V
92: iload 17
ifeq 102
93: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._lineNumberTableIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
94: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 19
invokevirtual java.io.DataOutputStream.writeInt:(I)V
95: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 18
arraylength
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
96: iconst_0
istore 23
start local 23 97: goto 101
98: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 18
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LineNumberTableElement.getStartBCI:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
99: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 18
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LineNumberTableElement.getLineNumber:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
100: iinc 23 1
StackMap locals:
StackMap stack:
101: iload 23
aload 18
arraylength
if_icmplt 98
end local 23 102: StackMap locals:
StackMap stack:
iload 20
ifeq 115
103: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._localVariableTableIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
104: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 22
invokevirtual java.io.DataOutputStream.writeInt:(I)V
105: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
arraylength
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
106: iconst_0
istore 23
start local 23 107: goto 114
108: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LocalVariableTableElement.getStartBCI:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
109: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LocalVariableTableElement.getLength:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
110: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LocalVariableTableElement.getNameCPIndex:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
111: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LocalVariableTableElement.getDescriptorCPIndex:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
112: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 21
iload 23
aaload
invokevirtual sun.jvm.hotspot.oops.LocalVariableTableElement.getSlot:()I
i2s
invokevirtual java.io.DataOutputStream.writeShort:(I)V
113: iinc 23 1
StackMap locals:
StackMap stack:
114: iload 23
aload 21
arraylength
if_icmplt 108
end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 115: StackMap locals: sun.jvm.hotspot.tools.jcore.ClassWriter sun.jvm.hotspot.oops.Method long int int int int int int int
StackMap stack:
iload 8
ifeq 129
116: aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getCheckedExceptions:()[Lsun/jvm/hotspot/oops/CheckedExceptionElement;
astore 11
start local 11 117: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._exceptionsIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
118: iconst_2
119: aload 11
arraylength
iconst_2
imul
120: iadd
istore 12
start local 12 121: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 12
invokevirtual java.io.DataOutputStream.writeInt:(I)V
122: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 11
arraylength
invokevirtual java.io.DataOutputStream.writeShort:(I)V
123: iconst_0
istore 13
start local 13 124: goto 128
125: StackMap locals: sun.jvm.hotspot.oops.CheckedExceptionElement[] int int
StackMap stack:
aload 11
iload 13
aaload
invokevirtual sun.jvm.hotspot.oops.CheckedExceptionElement.getClassCPIndex:()I
i2s
istore 14
start local 14 126: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 14
invokevirtual java.io.DataOutputStream.writeShort:(I)V
end local 14 127: iinc 13 1
StackMap locals:
StackMap stack:
128: iload 13
aload 11
arraylength
if_icmplt 125
end local 13 end local 12 end local 11 129: StackMap locals:
StackMap stack:
iload 10
ifeq 131
130: aload 0
aload 1
invokevirtual sun.jvm.hotspot.oops.Method.getGenericSignature:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeGenericSignature:(Ljava/lang/String;)V
131: StackMap locals:
StackMap stack:
return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 132 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 132 1 m Lsun/jvm/hotspot/oops/Method;
1 132 2 accessFlags J
7 132 4 isNative Z
10 132 5 isAbstract Z
11 132 6 methodAttributeCount S
12 132 7 hasSyn Z
15 132 8 hasCheckedExceptions Z
20 132 9 isCodeAvailable Z
25 132 10 isGeneric Z
32 115 11 code [B
33 115 12 codeAttrCount S
40 115 13 codeSize I
41 115 14 hasExceptionTable Z
42 115 15 exceptionTable [Lsun/jvm/hotspot/oops/ExceptionTableElement;
43 115 16 exceptionTableLen I
50 115 17 hasLineNumberTable Z
51 115 18 lineNumberTable [Lsun/jvm/hotspot/oops/LineNumberTableElement;
52 115 19 lineNumberAttrLen I
62 115 20 hasLocalVariableTable Z
63 115 21 localVariableTable [Lsun/jvm/hotspot/oops/LocalVariableTableElement;
64 115 22 localVarAttrLen I
84 91 23 e I
97 102 23 l I
107 115 23 l I
117 129 11 exceptions [Lsun/jvm/hotspot/oops/CheckedExceptionElement;
121 129 12 attrSize I
124 129 13 e I
126 127 14 cpIndex S
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
m
protected void rewriteByteCode(sun.jvm.hotspot.oops.Method, byte[]);
descriptor: (Lsun/jvm/hotspot/oops/Method;[B)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new sun.jvm.hotspot.tools.jcore.ByteCodeRewriter
dup
aload 1
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
aload 2
invokespecial sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.<init>:(Lsun/jvm/hotspot/oops/Method;Lsun/jvm/hotspot/oops/ConstantPool;[B)V
astore 3
start local 3 1: aload 3
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.rewrite:()V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 3 1 m Lsun/jvm/hotspot/oops/Method;
0 3 2 code [B
1 3 3 r Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
MethodParameters:
Name Flags
m
code
protected void writeGenericSignature(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._signatureIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
1: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_2
invokevirtual java.io.DataOutputStream.writeInt:(I)V
2: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 2
start local 2 3: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 2
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
0 5 1 signature Ljava/lang/String;
3 5 2 index Ljava/lang/Short;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
signature
protected void writeClassAttributes();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=11, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getAccessFlags:()J
lstore 1
start local 1 1: aload 0
lload 1
l2i
i2s
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.hasSyntheticAttribute:(S)Z
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: iload 3
ifeq 5
4: iload 4
iconst_1
iadd
i2s
istore 4
5: StackMap locals: long int int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getSourceFileName:()Lsun/jvm/hotspot/oops/Symbol;
astore 5
start local 5 6: aload 5
ifnull 8
7: iload 4
iconst_1
iadd
i2s
istore 4
8: StackMap locals: sun.jvm.hotspot.oops.Symbol
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getGenericSignature:()Lsun/jvm/hotspot/oops/Symbol;
astore 6
start local 6 9: aload 6
ifnull 11
10: iload 4
iconst_1
iadd
i2s
istore 4
11: StackMap locals: sun.jvm.hotspot.oops.Symbol
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.klass:Lsun/jvm/hotspot/oops/InstanceKlass;
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getInnerClasses:()Lsun/jvm/hotspot/utilities/U2Array;
astore 7
start local 7 12: aload 7
invokevirtual sun.jvm.hotspot.utilities.U2Array.length:()I
iconst_4
idiv
istore 8
start local 8 13: iload 8
ifeq 15
14: iload 4
iconst_1
iadd
i2s
istore 4
15: StackMap locals: sun.jvm.hotspot.utilities.U2Array int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 4
invokevirtual java.io.DataOutputStream.writeShort:(I)V
16: iload 3
ifeq 18
17: aload 0
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeSynthetic:()V
18: StackMap locals:
StackMap stack:
aload 5
ifnull 23
19: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._sourceFileIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
20: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iconst_2
invokevirtual java.io.DataOutputStream.writeInt:(I)V
21: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.utf8ToIndex:Ljava/util/Map;
aload 5
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Short
astore 9
start local 9 22: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 9
invokevirtual java.lang.Short.shortValue:()S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
end local 9 23: StackMap locals:
StackMap stack:
aload 6
ifnull 25
24: aload 0
aload 6
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeGenericSignature:(Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
iload 8
ifeq 37
26: aload 0
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter._innerClassesIndex:S
invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.writeIndex:(I)V
27: iconst_2
28: iload 8
bipush 8
imul
29: iadd
istore 9
start local 9 30: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 9
invokevirtual java.io.DataOutputStream.writeInt:(I)V
31: aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
iload 8
invokevirtual java.io.DataOutputStream.writeShort:(I)V
32: iconst_0
istore 10
start local 10 33: goto 36
34: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ClassWriter.dos:Ljava/io/DataOutputStream;
aload 7
iload 10
invokevirtual sun.jvm.hotspot.utilities.U2Array.at:(I)S
invokevirtual java.io.DataOutputStream.writeShort:(I)V
35: iinc 10 1
StackMap locals:
StackMap stack:
36: iload 10
iload 8
iconst_4
imul
if_icmplt 34
end local 10 end local 9 37: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lsun/jvm/hotspot/tools/jcore/ClassWriter;
1 38 1 flags J
2 38 3 hasSyn Z
3 38 4 classAttributeCount S
6 38 5 sourceFileName Lsun/jvm/hotspot/oops/Symbol;
9 38 6 genericSignature Lsun/jvm/hotspot/oops/Symbol;
12 38 7 innerClasses Lsun/jvm/hotspot/utilities/U2Array;
13 38 8 numInnerClasses I
22 23 9 index Ljava/lang/Short;
30 37 9 innerAttrLen I
33 37 10 index I
Exceptions:
throws java.io.IOException
}
SourceFile: "ClassWriter.java"