public class sun.jvm.hotspot.tools.jcore.ByteCodeRewriter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter
super_class: java.lang.Object
{
private sun.jvm.hotspot.oops.Method method;
descriptor: Lsun/jvm/hotspot/oops/Method;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.oops.ConstantPool cpool;
descriptor: Lsun/jvm/hotspot/oops/ConstantPool;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.oops.ConstantPoolCache cpCache;
descriptor: Lsun/jvm/hotspot/oops/ConstantPoolCache;
flags: (0x0002) ACC_PRIVATE
private byte[] code;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.runtime.Bytes bytes;
descriptor: Lsun/jvm/hotspot/runtime/Bytes;
flags: (0x0002) ACC_PRIVATE
private static final int jintSize;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final boolean DEBUG;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: new sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1
dup
invokespecial sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1.<init>:()V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0
start local 0 2: aload 0
ifnull 3
aload 0
ldc "true"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
goto 4
StackMap locals: java.lang.String
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: putstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
end local 0 5: return
LocalVariableTable:
Start End Slot Name Signature
2 5 0 debug Ljava/lang/String;
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/ByteCodeRewriter;
0 2 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void <init>(sun.jvm.hotspot.oops.Method, sun.jvm.hotspot.oops.ConstantPool, byte[]);
descriptor: (Lsun/jvm/hotspot/oops/Method;Lsun/jvm/hotspot/oops/ConstantPool;[B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
2: aload 0
aload 2
putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
3: aload 0
aload 2
invokevirtual sun.jvm.hotspot.oops.ConstantPool.getCache:()Lsun/jvm/hotspot/oops/ConstantPoolCache;
putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
4: aload 0
aload 3
putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
5: aload 0
invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getBytes:()Lsun/jvm/hotspot/runtime/Bytes;
putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
0 7 1 method Lsun/jvm/hotspot/oops/Method;
0 7 2 cpool Lsun/jvm/hotspot/oops/ConstantPool;
0 7 3 code [B
MethodParameters:
Name Flags
method
cpool
code
protected short getConstantPoolIndexFromRefMap(int, int);
descriptor: (II)S
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.format:(I)Ljava/lang/String;
astore 4
start local 4 1: aload 4
invokevirtual java.lang.String.length:()I
tableswitch { // 2 - 3
2: 2
3: 4
default: 6
}
2: StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int top java.lang.String
StackMap stack:
sipush 255
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeByteArg:(I)B
iand
istore 3
start local 3 3: goto 7
end local 3 4: StackMap locals:
StackMap stack:
ldc 65535
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
invokevirtual sun.jvm.hotspot.runtime.Bytes.swapShort:(S)S
iand
istore 3
start local 3 5: goto 7
end local 3 6: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
start local 3 7: StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int int java.lang.String
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
iload 3
invokevirtual sun.jvm.hotspot.oops.ConstantPool.objectToCPIndex:(I)I
i2s
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
0 8 1 rawcode I
0 8 2 bci I
3 4 3 refIndex I
5 6 3 refIndex I
7 8 3 refIndex I
1 8 4 fmt Ljava/lang/String;
MethodParameters:
Name Flags
rawcode
bci
protected short getConstantPoolIndex(int, int);
descriptor: (II)S
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.format:(I)Ljava/lang/String;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.String.length:()I
tableswitch { // 2 - 5
2: 2
3: 4
4: 11
5: 6
default: 11
}
2: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeByteArg:(I)B
istore 4
start local 4 3: goto 12
end local 4 4: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
istore 4
start local 4 5: goto 12
end local 4 6: StackMap locals:
StackMap stack:
aload 3
ldc "__"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 9
7: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
istore 4
start local 4 8: goto 12
end local 4 9: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 2
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeIntArg:(I)I
istore 4
start local 4 10: goto 12
end local 4 11: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
start local 4 12: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
ifnonnull 14
13: iload 4
i2s
ireturn
14: StackMap locals:
StackMap stack:
aload 3
ldc "JJJJ"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 18
15: iload 4
iconst_m1
ixor
istore 4
16: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
iload 4
invokevirtual sun.jvm.hotspot.runtime.Bytes.swapInt:(I)I
istore 4
17: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
iload 4
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
i2s
ireturn
18: StackMap locals:
StackMap stack:
aload 3
ldc "JJ"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 20
19: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
ldc 65535
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
iload 4
i2s
invokevirtual sun.jvm.hotspot.runtime.Bytes.swapShort:(S)S
iand
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
i2s
ireturn
20: StackMap locals:
StackMap stack:
aload 3
ldc "j"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 22
21: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
sipush 255
iload 4
iand
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
i2s
ireturn
22: StackMap locals:
StackMap stack:
iload 4
i2s
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
0 23 1 rawcode I
0 23 2 bci I
1 23 3 fmt Ljava/lang/String;
3 4 4 cpCacheIndex I
5 6 4 cpCacheIndex I
8 9 4 cpCacheIndex I
10 11 4 cpCacheIndex I
12 23 4 cpCacheIndex I
MethodParameters:
Name Flags
rawcode
bci
private static void writeShort(byte[], int, short);
descriptor: ([BIS)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 2
bipush 8
ishr
sipush 255
iand
i2b
bastore
1: aload 0
iload 1
iconst_1
iadd
iload 2
sipush 255
iand
i2b
bastore
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 buf [B
0 3 1 index I
0 3 2 value S
MethodParameters:
Name Flags
buf
index
value
public void rewrite();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: iconst_m1
istore 1
start local 1 1: iconst_m1
istore 2
start local 2 2: iconst_0
istore 3
start local 3 3: getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
ifeq 9
4: new java.lang.StringBuilder
dup
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMethodHolder:()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;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getSignature:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 8: aload 0
aload 4
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.debugMessage:(Ljava/lang/String;)V
end local 4 9: StackMap locals: int int int
StackMap stack:
iconst_0
istore 4
start local 4 10: goto 57
11: StackMap locals: int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 4
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.codeAt:(Lsun/jvm/hotspot/oops/Method;I)I
istore 2
12: iload 2
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.javaCode:(I)I
istore 1
13: getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 20
14: sipush 255
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
baload
iand
istore 5
start local 5 15: iload 5
iload 2
if_icmpeq 17
16: iload 5
sipush 202
if_icmpeq 17
iconst_0
goto 18
StackMap locals: int
StackMap stack:
17: iconst_1
18: StackMap locals:
StackMap stack: int
ldc "Unexpected bytecode found in method bytecode buffer!"
19: invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
end local 5 20: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
sipush 255
iload 1
iand
i2b
bastore
21: iconst_0
istore 5
start local 5 22: iload 1
lookupswitch { // 11
18: 34
19: 30
178: 23
179: 23
180: 23
181: 23
182: 23
183: 23
184: 23
185: 23
186: 26
default: 37
}
23: StackMap locals: int
StackMap stack:
aload 0
iload 2
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndex:(II)S
istore 5
24: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_1
iadd
iload 5
invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
25: goto 37
26: StackMap locals:
StackMap stack:
aload 0
iload 2
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndex:(II)S
istore 5
27: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_1
iadd
iload 5
invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
28: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_3
iadd
iconst_0
invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
29: goto 37
30: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmpeq 37
31: aload 0
iload 2
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndexFromRefMap:(II)S
istore 5
32: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_1
iadd
iload 5
invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
33: goto 37
34: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmpeq 37
35: aload 0
iload 2
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndexFromRefMap:(II)S
istore 5
36: aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_1
iadd
iload 5
i2b
bastore
37: StackMap locals:
StackMap stack:
iload 1
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthFor:(I)I
istore 3
38: iload 3
ifgt 39
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 4
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthAt:(Lsun/jvm/hotspot/oops/Method;I)I
istore 3
39: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
ifeq 56
40: ldc ""
astore 6
start local 6 41: iload 3
tableswitch { // 2 - 5
2: 42
3: 44
4: 50
5: 49
default: 50
}
42: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
iload 4
iconst_1
iadd
baload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
43: goto 50
44: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
ifeq 45
iload 5
goto 46
45: StackMap locals:
StackMap stack: java.lang.StringBuilder
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int int int int java.lang.String
StackMap stack: java.lang.StringBuilder int
46: invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
47: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
48: goto 50
49: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
iload 4
iconst_1
iadd
invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeIntArg:(I)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
50: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "\t\t"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 51: iload 2
iload 1
if_icmpeq 53
52: new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
53: StackMap locals: java.lang.String
StackMap stack:
aload 6
ldc ""
if_acmpeq 55
54: new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
55: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
ifeq 56
aload 0
aload 7
invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.debugMessage:(Ljava/lang/String;)V
end local 7 end local 6 56: StackMap locals:
StackMap stack:
iload 4
iload 3
iadd
istore 4
end local 5 57: StackMap locals:
StackMap stack:
iload 4
aload 0
getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
arraylength
if_icmplt 11
end local 4 58: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 59 0 this Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
1 59 1 bytecode I
2 59 2 hotspotcode I
3 59 3 len I
8 9 4 msg Ljava/lang/String;
10 58 4 bci I
15 20 5 code_from_buffer I
22 57 5 cpoolIndex S
41 56 6 operand Ljava/lang/String;
51 56 7 message Ljava/lang/String;
}
SourceFile: "ByteCodeRewriter.java"
NestMembers:
sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1
InnerClasses:
sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1