public class sun.jvm.hotspot.debugger.DebuggerUtilities
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.debugger.DebuggerUtilities
super_class: java.lang.Object
{
protected long addressSize;
descriptor: J
flags: (0x0004) ACC_PROTECTED
protected boolean isBigEndian;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
public void <init>(long, boolean);
descriptor: (JZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // long addressSize
start local 3 // boolean isBigEndian
0: .line 33
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 34
aload 0 /* this */
lload 1 /* addressSize */
putfield sun.jvm.hotspot.debugger.DebuggerUtilities.addressSize:J
2: .line 35
aload 0 /* this */
iload 3 /* isBigEndian */
putfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
3: .line 36
return
end local 3 // boolean isBigEndian
end local 1 // long addressSize
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 addressSize J
0 4 3 isBigEndian Z
MethodParameters:
Name Flags
addressSize
isBigEndian
public java.lang.String addressValueToString(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // long address
0: .line 39
new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 3 /* buf */
start local 3 // java.lang.StringBuffer buf
1: .line 40
aload 3 /* buf */
ldc "0x"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: .line 43
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.addressSize:J
ldc 8
lcmp
ifne 5
3: .line 44
lload 1 /* address */
invokestatic java.lang.Long.toHexString:(J)Ljava/lang/String;
astore 4 /* val */
start local 4 // java.lang.String val
4: .line 45
goto 6
end local 4 // java.lang.String val
5: .line 46
StackMap locals: java.lang.StringBuffer
StackMap stack:
lload 1 /* address */
l2i
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 4 /* val */
start local 4 // java.lang.String val
6: .line 48
StackMap locals: java.lang.String
StackMap stack:
iconst_0
istore 5 /* i */
start local 5 // int i
7: goto 10
8: .line 49
StackMap locals: int
StackMap stack:
aload 3 /* buf */
bipush 48
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
9: .line 48
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 5 /* i */
i2l
ldc 2
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.addressSize:J
lmul
aload 4 /* val */
invokevirtual java.lang.String.length:()I
i2l
lsub
lcmp
iflt 8
end local 5 // int i
11: .line 51
aload 3 /* buf */
aload 4 /* val */
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
12: .line 52
aload 3 /* buf */
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 4 // java.lang.String val
end local 3 // java.lang.StringBuffer buf
end local 1 // long address
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 13 1 address J
1 13 3 buf Ljava/lang/StringBuffer;
4 5 4 val Ljava/lang/String;
6 13 4 val Ljava/lang/String;
7 11 5 i I
MethodParameters:
Name Flags
address
public void checkAlignment(long, long);
descriptor: (JJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // long address
start local 3 // long alignment
0: .line 56
lload 1 /* address */
lload 3 /* alignment */
lrem
lconst_0
lcmp
ifeq 6
1: .line 57
new sun.jvm.hotspot.debugger.UnalignedAddressException
dup
new java.lang.StringBuilder
dup
ldc "Trying to read at address: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: .line 58
aload 0 /* this */
lload 1 /* address */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.addressValueToString:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: .line 59
ldc " with alignment: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 3 /* alignment */
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: .line 60
lload 1 /* address */
5: .line 57
invokespecial sun.jvm.hotspot.debugger.UnalignedAddressException.<init>:(Ljava/lang/String;J)V
athrow
6: .line 62
StackMap locals:
StackMap stack:
return
end local 3 // long alignment
end local 1 // long address
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 7 1 address J
0 7 3 alignment J
MethodParameters:
Name Flags
address
alignment
public long scanAddress(java.lang.String);
descriptor: (Ljava/lang/String;)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // java.lang.String addrStr
0: .line 65
aload 1 /* addrStr */
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 2 /* s */
start local 2 // java.lang.String s
1: .line 66
aload 2 /* s */
ldc "0x"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 3
2: .line 67
new java.lang.NumberFormatException
dup
aload 1 /* addrStr */
invokespecial java.lang.NumberFormatException.<init>:(Ljava/lang/String;)V
athrow
3: .line 69
StackMap locals: java.lang.String
StackMap stack:
lconst_0
lstore 3 /* l */
start local 3 // long l
4: .line 70
iconst_2
istore 5 /* i */
start local 5 // int i
5: goto 10
6: .line 71
StackMap locals: long int
StackMap stack:
aload 0 /* this */
aload 2 /* s */
iload 5 /* i */
invokevirtual java.lang.String.charAt:(I)C
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.charToNibble:(C)I
istore 6 /* val */
start local 6 // int val
7: .line 72
lload 3 /* l */
iconst_4
lshl
lstore 3 /* l */
8: .line 73
lload 3 /* l */
iload 6 /* val */
i2l
lor
lstore 3 /* l */
end local 6 // int val
9: .line 70
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 5 /* i */
aload 2 /* s */
invokevirtual java.lang.String.length:()I
if_icmplt 6
end local 5 // int i
11: .line 75
lload 3 /* l */
lreturn
end local 3 // long l
end local 2 // java.lang.String s
end local 1 // java.lang.String addrStr
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 12 1 addrStr Ljava/lang/String;
1 12 2 s Ljava/lang/String;
4 12 3 l J
5 11 5 i I
7 9 6 val I
Exceptions:
throws java.lang.NumberFormatException
MethodParameters:
Name Flags
addrStr
public int charToNibble(char);
descriptor: (C)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // char ascii
0: .line 79
iload 1 /* ascii */
bipush 48
if_icmplt 2
iload 1 /* ascii */
bipush 57
if_icmpgt 2
1: .line 80
iload 1 /* ascii */
bipush 48
isub
ireturn
2: .line 81
StackMap locals:
StackMap stack:
iload 1 /* ascii */
bipush 65
if_icmplt 4
iload 1 /* ascii */
bipush 70
if_icmpgt 4
3: .line 82
bipush 10
iload 1 /* ascii */
iadd
bipush 65
isub
ireturn
4: .line 83
StackMap locals:
StackMap stack:
iload 1 /* ascii */
bipush 97
if_icmplt 6
iload 1 /* ascii */
bipush 102
if_icmpgt 6
5: .line 84
bipush 10
iload 1 /* ascii */
iadd
bipush 97
isub
ireturn
6: .line 86
StackMap locals:
StackMap stack:
new java.lang.NumberFormatException
dup
new java.lang.Character
dup
iload 1 /* ascii */
invokespecial java.lang.Character.<init>:(C)V
invokevirtual java.lang.Character.toString:()Ljava/lang/String;
invokespecial java.lang.NumberFormatException.<init>:(Ljava/lang/String;)V
athrow
end local 1 // char ascii
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 7 1 ascii C
Exceptions:
throws java.lang.NumberFormatException
MethodParameters:
Name Flags
ascii
public boolean dataToJBoolean(byte[], long);
descriptor: ([BJ)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jbooleanSize
0: .line 90
aload 0 /* this */
aload 1 /* data */
lload 2 /* jbooleanSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 92
aload 1 /* data */
iconst_0
baload
ifeq 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 2 // long jbooleanSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 3 1 data [B
0 3 2 jbooleanSize J
MethodParameters:
Name Flags
data
jbooleanSize
public byte dataToJByte(byte[], long);
descriptor: ([BJ)B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jbyteSize
0: .line 96
aload 0 /* this */
aload 1 /* data */
lload 2 /* jbyteSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 98
aload 1 /* data */
iconst_0
baload
ireturn
end local 2 // long jbyteSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 2 1 data [B
0 2 2 jbyteSize J
MethodParameters:
Name Flags
data
jbyteSize
public char dataToJChar(byte[], long);
descriptor: ([BJ)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jcharSize
0: .line 102
aload 0 /* this */
aload 1 /* data */
lload 2 /* jcharSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 104
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 105
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 108
StackMap locals:
StackMap stack:
aload 1 /* data */
iconst_0
baload
sipush 255
iand
bipush 8
ishl
aload 1 /* data */
iconst_1
baload
sipush 255
iand
ior
i2c
ireturn
end local 2 // long jcharSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 data [B
0 4 2 jcharSize J
MethodParameters:
Name Flags
data
jcharSize
public double dataToJDouble(byte[], long);
descriptor: ([BJ)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jdoubleSize
0: .line 112
aload 0 /* this */
aload 1 /* data */
lload 2 /* jdoubleSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.dataToJLong:([BJ)J
lstore 4 /* longBits */
start local 4 // long longBits
1: .line 114
lload 4 /* longBits */
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 4 // long longBits
end local 2 // long jdoubleSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 2 1 data [B
0 2 2 jdoubleSize J
1 2 4 longBits J
MethodParameters:
Name Flags
data
jdoubleSize
public float dataToJFloat(byte[], long);
descriptor: ([BJ)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jfloatSize
0: .line 118
aload 0 /* this */
aload 1 /* data */
lload 2 /* jfloatSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.dataToJInt:([BJ)I
istore 4 /* intBits */
start local 4 // int intBits
1: .line 120
iload 4 /* intBits */
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 4 // int intBits
end local 2 // long jfloatSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 2 1 data [B
0 2 2 jfloatSize J
1 2 4 intBits I
MethodParameters:
Name Flags
data
jfloatSize
public int dataToJInt(byte[], long);
descriptor: ([BJ)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jintSize
0: .line 124
aload 0 /* this */
aload 1 /* data */
lload 2 /* jintSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 126
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 127
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 130
StackMap locals:
StackMap stack:
aload 1 /* data */
iconst_0
baload
sipush 255
iand
bipush 24
ishl
aload 1 /* data */
iconst_1
baload
sipush 255
iand
bipush 16
ishl
ior
aload 1 /* data */
iconst_2
baload
sipush 255
iand
bipush 8
ishl
ior
aload 1 /* data */
iconst_3
baload
sipush 255
iand
ior
ireturn
end local 2 // long jintSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 data [B
0 4 2 jintSize J
MethodParameters:
Name Flags
data
jintSize
public long dataToJLong(byte[], long);
descriptor: ([BJ)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jlongSize
0: .line 134
aload 0 /* this */
aload 1 /* data */
lload 2 /* jlongSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 136
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 137
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 140
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.rawDataToJLong:([B)J
lreturn
end local 2 // long jlongSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 data [B
0 4 2 jlongSize J
MethodParameters:
Name Flags
data
jlongSize
public short dataToJShort(byte[], long);
descriptor: ([BJ)S
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long jshortSize
0: .line 144
aload 0 /* this */
aload 1 /* data */
lload 2 /* jshortSize */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 146
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 147
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 150
StackMap locals:
StackMap stack:
aload 1 /* data */
iconst_0
baload
sipush 255
iand
bipush 8
ishl
aload 1 /* data */
iconst_1
baload
sipush 255
iand
ior
i2s
ireturn
end local 2 // long jshortSize
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 data [B
0 4 2 jshortSize J
MethodParameters:
Name Flags
data
jshortSize
public long dataToCInteger(byte[], boolean);
descriptor: ([BZ)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // boolean isUnsigned
0: .line 154
aload 0 /* this */
aload 1 /* data */
aload 1 /* data */
arraylength
i2l
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 156
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 157
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 163
StackMap locals:
StackMap stack:
aload 1 /* data */
arraylength
bipush 8
if_icmpge 16
4: .line 164
iload 2 /* isUnsigned */
ifne 16
5: .line 165
aload 1 /* data */
iconst_0
baload
sipush 128
iand
ifeq 16
6: .line 167
bipush 8
newarray 8
astore 3 /* newData */
start local 3 // byte[] newData
7: .line 168
iconst_0
istore 4 /* i */
start local 4 // int i
8: goto 14
9: .line 169
StackMap locals: byte[] int
StackMap stack:
bipush 7
iload 4 /* i */
isub
aload 1 /* data */
arraylength
if_icmpge 12
10: .line 170
aload 3 /* newData */
iload 4 /* i */
aload 1 /* data */
iload 4 /* i */
aload 1 /* data */
arraylength
iadd
bipush 8
isub
baload
bastore
11: .line 171
goto 13
12: .line 172
StackMap locals:
StackMap stack:
aload 3 /* newData */
iload 4 /* i */
iconst_m1
bastore
13: .line 168
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
14: iload 4 /* i */
bipush 8
if_icmplt 9
end local 4 // int i
15: .line 175
aload 3 /* newData */
astore 1 /* data */
end local 3 // byte[] newData
16: .line 179
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.rawDataToJLong:([B)J
lreturn
end local 2 // boolean isUnsigned
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 17 1 data [B
0 17 2 isUnsigned Z
7 16 3 newData [B
8 15 4 i I
MethodParameters:
Name Flags
data
isUnsigned
public long dataToAddressValue(byte[]);
descriptor: ([B)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
0: .line 183
aload 0 /* this */
aload 1 /* data */
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.addressSize:J
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.checkDataContents:([BJ)V
1: .line 185
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 3
2: .line 186
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
3: .line 189
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* data */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.rawDataToJLong:([B)J
lreturn
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 4 1 data [B
MethodParameters:
Name Flags
data
public byte[] jbooleanToData(boolean);
descriptor: (Z)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // boolean value
0: .line 193
iconst_1
newarray 8
astore 2 /* res */
start local 2 // byte[] res
1: .line 194
aload 2 /* res */
iconst_0
iload 1 /* value */
ifeq 2
iconst_1
goto 3
StackMap locals: sun.jvm.hotspot.debugger.DebuggerUtilities int byte[]
StackMap stack: byte[] int
2: iconst_0
StackMap locals: sun.jvm.hotspot.debugger.DebuggerUtilities int byte[]
StackMap stack: byte[] int int
3: i2b
bastore
4: .line 195
aload 2 /* res */
areturn
end local 2 // byte[] res
end local 1 // boolean value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 5 1 value Z
1 5 2 res [B
MethodParameters:
Name Flags
value
public byte[] jbyteToData(byte);
descriptor: (B)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte value
0: .line 199
iconst_1
newarray 8
astore 2 /* res */
start local 2 // byte[] res
1: .line 200
aload 2 /* res */
iconst_0
iload 1 /* value */
bastore
2: .line 201
aload 2 /* res */
areturn
end local 2 // byte[] res
end local 1 // byte value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 3 1 value B
1 3 2 res [B
MethodParameters:
Name Flags
value
public byte[] jcharToData(char);
descriptor: (C)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // char value
0: .line 205
iconst_2
newarray 8
astore 2 /* res */
start local 2 // byte[] res
1: .line 206
aload 2 /* res */
iconst_0
iload 1 /* value */
bipush 8
ishr
sipush 255
iand
i2b
bastore
2: .line 207
aload 2 /* res */
iconst_1
iload 1 /* value */
i2b
bastore
3: .line 208
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 5
4: .line 209
aload 0 /* this */
aload 2 /* res */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
5: .line 211
StackMap locals: byte[]
StackMap stack:
aload 2 /* res */
areturn
end local 2 // byte[] res
end local 1 // char value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 6 1 value C
1 6 2 res [B
MethodParameters:
Name Flags
value
public byte[] jdoubleToData(double);
descriptor: (D)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // double value
0: .line 215
aload 0 /* this */
dload 1 /* value */
invokestatic java.lang.Double.doubleToLongBits:(D)J
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.jlongToData:(J)[B
areturn
end local 1 // double value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 1 1 value D
MethodParameters:
Name Flags
value
public byte[] jfloatToData(float);
descriptor: (F)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // float value
0: .line 219
aload 0 /* this */
fload 1 /* value */
invokestatic java.lang.Float.floatToIntBits:(F)I
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.jintToData:(I)[B
areturn
end local 1 // float value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 1 1 value F
MethodParameters:
Name Flags
value
public byte[] jintToData(int);
descriptor: (I)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // int value
0: .line 223
iconst_4
newarray 8
astore 2 /* res */
start local 2 // byte[] res
1: .line 224
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 225
StackMap locals: byte[] int
StackMap stack:
aload 2 /* res */
iconst_3
iload 3 /* i */
isub
iload 1 /* value */
sipush 255
iand
i2b
bastore
4: .line 226
iload 1 /* value */
bipush 8
iushr
istore 1 /* value */
5: .line 224
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
iconst_4
if_icmplt 3
end local 3 // int i
7: .line 228
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 9
8: .line 229
aload 0 /* this */
aload 2 /* res */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
9: .line 231
StackMap locals:
StackMap stack:
aload 2 /* res */
areturn
end local 2 // byte[] res
end local 1 // int value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 10 1 value I
1 10 2 res [B
2 7 3 i I
MethodParameters:
Name Flags
value
public byte[] jlongToData(long);
descriptor: (J)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // long value
0: .line 235
bipush 8
newarray 8
astore 3 /* res */
start local 3 // byte[] res
1: .line 236
iconst_0
istore 4 /* i */
start local 4 // int i
2: goto 6
3: .line 237
StackMap locals: byte[] int
StackMap stack:
aload 3 /* res */
bipush 7
iload 4 /* i */
isub
lload 1 /* value */
ldc 255
land
l2i
i2b
bastore
4: .line 238
lload 1 /* value */
bipush 8
lushr
lstore 1 /* value */
5: .line 236
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 4 /* i */
bipush 8
if_icmplt 3
end local 4 // int i
7: .line 240
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 9
8: .line 241
aload 0 /* this */
aload 3 /* res */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
9: .line 243
StackMap locals:
StackMap stack:
aload 3 /* res */
areturn
end local 3 // byte[] res
end local 1 // long value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 10 1 value J
1 10 3 res [B
2 7 4 i I
MethodParameters:
Name Flags
value
public byte[] jshortToData(short);
descriptor: (S)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // short value
0: .line 247
iconst_2
newarray 8
astore 2 /* res */
start local 2 // byte[] res
1: .line 248
aload 2 /* res */
iconst_0
iload 1 /* value */
bipush 8
ishr
sipush 255
iand
i2b
bastore
2: .line 249
aload 2 /* res */
iconst_1
iload 1 /* value */
i2b
bastore
3: .line 250
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 5
4: .line 251
aload 0 /* this */
aload 2 /* res */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
5: .line 253
StackMap locals: byte[]
StackMap stack:
aload 2 /* res */
areturn
end local 2 // byte[] res
end local 1 // short value
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 6 1 value S
1 6 2 res [B
MethodParameters:
Name Flags
value
public byte[] cIntegerToData(long, long);
descriptor: (JJ)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // long longNumBytes
start local 3 // long value
0: .line 257
lload 1 /* longNumBytes */
l2i
istore 5 /* numBytes */
start local 5 // int numBytes
1: .line 258
iload 5 /* numBytes */
newarray 8
astore 6 /* res */
start local 6 // byte[] res
2: .line 259
iconst_0
istore 7 /* i */
start local 7 // int i
3: goto 7
4: .line 260
StackMap locals: int byte[] int
StackMap stack:
aload 6 /* res */
iload 5 /* numBytes */
iload 7 /* i */
isub
iconst_1
isub
lload 3 /* value */
ldc 255
land
l2i
i2b
bastore
5: .line 261
lload 3 /* value */
bipush 8
lushr
lstore 3 /* value */
6: .line 259
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
7: iload 7 /* i */
iload 5 /* numBytes */
if_icmplt 4
end local 7 // int i
8: .line 263
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.DebuggerUtilities.isBigEndian:Z
ifne 10
9: .line 264
aload 0 /* this */
aload 6 /* res */
invokevirtual sun.jvm.hotspot.debugger.DebuggerUtilities.byteSwap:([B)V
10: .line 266
StackMap locals:
StackMap stack:
aload 6 /* res */
areturn
end local 6 // byte[] res
end local 5 // int numBytes
end local 3 // long value
end local 1 // long longNumBytes
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 11 1 longNumBytes J
0 11 3 value J
1 11 5 numBytes I
2 11 6 res [B
3 8 7 i I
MethodParameters:
Name Flags
longNumBytes
value
private void checkDataContents(byte[], long);
descriptor: ([BJ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
start local 2 // long len
0: .line 274
aload 1 /* data */
arraylength
lload 2 /* len */
l2i
if_icmpeq 2
1: .line 275
new java.lang.InternalError
dup
ldc "Bug in Win32Debugger"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
2: .line 277
StackMap locals:
StackMap stack:
return
end local 2 // long len
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 3 1 data [B
0 3 2 len J
MethodParameters:
Name Flags
data
len
private void byteSwap(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
0: .line 280
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 7
2: .line 281
StackMap locals: int
StackMap stack:
aload 1 /* data */
arraylength
iload 2 /* i */
isub
iconst_1
isub
istore 3 /* altIndex */
start local 3 // int altIndex
3: .line 282
aload 1 /* data */
iload 3 /* altIndex */
baload
istore 4 /* t */
start local 4 // byte t
4: .line 283
aload 1 /* data */
iload 3 /* altIndex */
aload 1 /* data */
iload 2 /* i */
baload
bastore
5: .line 284
aload 1 /* data */
iload 2 /* i */
iload 4 /* t */
bastore
end local 4 // byte t
end local 3 // int altIndex
6: .line 280
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
7: iload 2 /* i */
aload 1 /* data */
arraylength
iconst_2
idiv
if_icmplt 2
end local 2 // int i
8: .line 286
return
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 9 1 data [B
1 8 2 i I
3 6 3 altIndex I
4 6 4 t B
MethodParameters:
Name Flags
data
private long rawDataToJLong(byte[]);
descriptor: ([B)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
start local 1 // byte[] data
0: .line 289
lconst_0
lstore 2 /* addr */
start local 2 // long addr
1: .line 290
iconst_0
istore 4 /* i */
start local 4 // int i
2: goto 6
3: .line 291
StackMap locals: long int
StackMap stack:
lload 2 /* addr */
bipush 8
lshl
lstore 2 /* addr */
4: .line 292
lload 2 /* addr */
aload 1 /* data */
iload 4 /* i */
baload
sipush 255
iand
i2l
lor
lstore 2 /* addr */
5: .line 290
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 4 /* i */
aload 1 /* data */
arraylength
if_icmplt 3
end local 4 // int i
7: .line 295
lload 2 /* addr */
lreturn
end local 2 // long addr
end local 1 // byte[] data
end local 0 // sun.jvm.hotspot.debugger.DebuggerUtilities this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/debugger/DebuggerUtilities;
0 8 1 data [B
1 8 2 addr J
2 7 4 i I
MethodParameters:
Name Flags
data
}
SourceFile: "DebuggerUtilities.java"