public class com.sun.tools.hat.internal.parser.HprofReader extends com.sun.tools.hat.internal.parser.Reader implements com.sun.tools.hat.internal.model.ArrayTypeCodes
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.hat.internal.parser.HprofReader
super_class: com.sun.tools.hat.internal.parser.Reader
{
static final int MAGIC_NUMBER;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1245795905
private static final java.lang.String[] VERSIONS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int VERSION_JDK12BETA3;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int VERSION_JDK12BETA4;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int VERSION_JDK6;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int HPROF_UTF8;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int HPROF_LOAD_CLASS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int HPROF_UNLOAD_CLASS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int HPROF_FRAME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
static final int HPROF_TRACE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 5
static final int HPROF_ALLOC_SITES;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 6
static final int HPROF_HEAP_SUMMARY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 7
static final int HPROF_START_THREAD;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 10
static final int HPROF_END_THREAD;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 11
static final int HPROF_HEAP_DUMP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 12
static final int HPROF_CPU_SAMPLES;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 13
static final int HPROF_CONTROL_SETTINGS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 14
static final int HPROF_LOCKSTATS_WAIT_TIME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 16
static final int HPROF_LOCKSTATS_HOLD_TIME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 17
static final int HPROF_GC_ROOT_UNKNOWN;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 255
static final int HPROF_GC_ROOT_JNI_GLOBAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int HPROF_GC_ROOT_JNI_LOCAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int HPROF_GC_ROOT_JAVA_FRAME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int HPROF_GC_ROOT_NATIVE_STACK;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
static final int HPROF_GC_ROOT_STICKY_CLASS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 5
static final int HPROF_GC_ROOT_THREAD_BLOCK;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 6
static final int HPROF_GC_ROOT_MONITOR_USED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 7
static final int HPROF_GC_ROOT_THREAD_OBJ;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 8
static final int HPROF_GC_CLASS_DUMP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 32
static final int HPROF_GC_INSTANCE_DUMP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 33
static final int HPROF_GC_OBJ_ARRAY_DUMP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 34
static final int HPROF_GC_PRIM_ARRAY_DUMP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 35
static final int HPROF_HEAP_DUMP_SEGMENT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 28
static final int HPROF_HEAP_DUMP_END;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 44
private static final int T_CLASS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private int version;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int debugLevel;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long currPos;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private int dumpsToSkip;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean callStack;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int identifierSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.Hashtable<java.lang.Long, java.lang.String> names;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Long;Ljava/lang/String;>;
private java.util.Hashtable<java.lang.Integer, com.sun.tools.hat.internal.parser.HprofReader$ThreadObject> threadObjects;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Integer;Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;>;
private java.util.Hashtable<java.lang.Long, java.lang.String> classNameFromObjectID;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Long;Ljava/lang/String;>;
private java.util.Hashtable<java.lang.Integer, java.lang.String> classNameFromSerialNo;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Integer;Ljava/lang/String;>;
private java.util.Hashtable<java.lang.Long, com.sun.tools.hat.internal.model.StackFrame> stackFrames;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Long;Lcom/sun/tools/hat/internal/model/StackFrame;>;
private java.util.Hashtable<java.lang.Integer, com.sun.tools.hat.internal.model.StackTrace> stackTraces;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Hashtable<Ljava/lang/Integer;Lcom/sun/tools/hat/internal/model/StackTrace;>;
private com.sun.tools.hat.internal.model.Snapshot snapshot;
descriptor: Lcom/sun/tools/hat/internal/model/Snapshot;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_3
anewarray java.lang.String
dup
iconst_0
1: ldc " PROFILE 1.0\u0000"
aastore
dup
iconst_1
2: ldc " PROFILE 1.0.1\u0000"
aastore
dup
iconst_2
3: ldc " PROFILE 1.0.2\u0000"
aastore
4: putstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
5: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.lang.String, com.sun.tools.hat.internal.parser.PositionDataInputStream, int, boolean, int);
descriptor: (Ljava/lang/String;Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;IZI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 2
invokespecial com.sun.tools.hat.internal.parser.Reader.<init>:(Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;)V
1: new java.io.RandomAccessFile
dup
aload 1
ldc "r"
invokespecial java.io.RandomAccessFile.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 6
start local 6 2: aload 0
new com.sun.tools.hat.internal.model.Snapshot
dup
aload 6
invokestatic com.sun.tools.hat.internal.parser.MappedReadBuffer.create:(Ljava/io/RandomAccessFile;)Lcom/sun/tools/hat/internal/parser/ReadBuffer;
invokespecial com.sun.tools.hat.internal.model.Snapshot.<init>:(Lcom/sun/tools/hat/internal/parser/ReadBuffer;)V
putfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
3: aload 0
iload 3
iconst_1
isub
putfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
4: aload 0
iload 4
putfield com.sun.tools.hat.internal.parser.HprofReader.callStack:Z
5: aload 0
iload 5
putfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
6: aload 0
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putfield com.sun.tools.hat.internal.parser.HprofReader.names:Ljava/util/Hashtable;
7: aload 0
new java.util.Hashtable
dup
bipush 43
invokespecial java.util.Hashtable.<init>:(I)V
putfield com.sun.tools.hat.internal.parser.HprofReader.threadObjects:Ljava/util/Hashtable;
8: aload 0
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromObjectID:Ljava/util/Hashtable;
9: iload 4
ifeq 13
10: aload 0
new java.util.Hashtable
dup
bipush 43
invokespecial java.util.Hashtable.<init>:(I)V
putfield com.sun.tools.hat.internal.parser.HprofReader.stackFrames:Ljava/util/Hashtable;
11: aload 0
new java.util.Hashtable
dup
bipush 43
invokespecial java.util.Hashtable.<init>:(I)V
putfield com.sun.tools.hat.internal.parser.HprofReader.stackTraces:Ljava/util/Hashtable;
12: aload 0
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromSerialNo:Ljava/util/Hashtable;
13: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader java.lang.String com.sun.tools.hat.internal.parser.PositionDataInputStream int int int java.io.RandomAccessFile
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 14 1 fileName Ljava/lang/String;
0 14 2 in Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
0 14 3 dumpNumber I
0 14 4 callStack Z
0 14 5 debugLevel I
2 14 6 file Ljava/io/RandomAccessFile;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fileName
in
dumpNumber
callStack
debugLevel
public com.sun.tools.hat.internal.model.Snapshot read();
descriptor: ()Lcom/sun/tools/hat/internal/model/Snapshot;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=12, args_size=1
start local 0 0: aload 0
ldc 4
putfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
1: aload 0
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readVersionHeader:()I
putfield com.sun.tools.hat.internal.parser.HprofReader.version:I
2: aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
putfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
3: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setIdentifierSize:(I)V
4: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmplt 7
5: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
iconst_1
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setNewStyleArrayClass:(Z)V
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
iconst_0
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setNewStyleArrayClass:(Z)V
8: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
ldc 4
ladd
putfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
9: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iconst_4
if_icmpeq 11
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
bipush 8
if_icmpeq 11
10: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "I'm sorry, but I can't deal with an identifier size of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ". I can only deal with 4 or 8."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Dump file created "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
new java.util.Date
dup
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readLong:()J
invokespecial java.util.Date.<init>:(J)V
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
12: aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
ldc 8
ladd
putfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
13: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedByte:()I
istore 1
start local 1 14: goto 17
end local 1 StackMap locals:
StackMap stack: java.io.EOFException
15: pop
16: goto 121
start local 1 17: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
pop
18: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
i2l
ldc 4294967295
land
lstore 2
start local 2 19: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
ifle 24
20: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Read record type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
21: ldc ", length "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
22: ldc " at position "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
23: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
24: StackMap locals: long
StackMap stack:
lload 2
lconst_0
lcmp
ifge 29
25: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Bad record length of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
26: ldc " at byte "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
ldc 5
ladd
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: ldc " of file."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
28: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
29: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
ldc 9
lload 2
ladd
ladd
putfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
30: iload 1
lookupswitch { // 16
1: 31
2: 36
3: 116
4: 78
5: 98
6: 116
7: 116
10: 116
11: 116
12: 46
13: 116
14: 116
16: 116
17: 116
28: 66
44: 57
default: 118
}
31: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 4
start local 4 32: lload 2
l2i
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
isub
newarray 8
astore 6
start local 6 33: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
aload 6
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readFully:([B)V
34: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.names:Ljava/util/Hashtable;
new java.lang.Long
dup
lload 4
invokespecial java.lang.Long.<init>:(J)V
new java.lang.String
dup
aload 6
invokespecial java.lang.String.<init>:([B)V
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
35: goto 13
end local 6 end local 4 36: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 4
start local 4 37: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 5
start local 5 38: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
pop
39: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 7
start local 7 40: new java.lang.Long
dup
lload 5
invokespecial java.lang.Long.<init>:(J)V
astore 9
start local 9 41: aload 0
lload 7
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 10
start local 10 42: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromObjectID:Ljava/util/Hashtable;
aload 9
aload 10
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
43: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromSerialNo:Ljava/util/Hashtable;
ifnull 13
44: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromSerialNo:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 4
invokespecial java.lang.Integer.<init>:(I)V
aload 10
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
45: goto 13
end local 10 end local 9 end local 7 end local 5 end local 4 46: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
ifgt 54
47: aload 0
lload 2
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readHeapDump:(JJ)V
48: goto 51
StackMap locals:
StackMap stack: java.io.EOFException
49: astore 4
start local 4 50: aload 0
aload 4
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.handleEOF:(Ljava/io/EOFException;Lcom/sun/tools/hat/internal/model/Snapshot;)V
end local 4 51: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
ifle 53
52: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc " Finished processing instances in heap dump."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
53: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
areturn
54: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
iconst_1
isub
putfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
55: aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
56: goto 13
57: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_2
if_icmplt 63
58: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
ifgt 61
59: aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
60: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
areturn
61: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
iconst_1
isub
putfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
62: goto 64
63: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Ignoring unrecognized record type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
64: StackMap locals:
StackMap stack:
aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
65: goto 13
66: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_2
if_icmplt 75
67: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.dumpsToSkip:I
ifgt 73
68: aload 0
lload 2
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readHeapDump:(JJ)V
69: goto 13
StackMap locals:
StackMap stack: java.io.EOFException
70: astore 4
start local 4 71: aload 0
aload 4
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.handleEOF:(Ljava/io/EOFException;Lcom/sun/tools/hat/internal/model/Snapshot;)V
end local 4 72: goto 13
73: StackMap locals:
StackMap stack:
aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
74: goto 13
75: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Ignoring unrecognized record type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
76: aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
77: goto 13
78: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackFrames:Ljava/util/Hashtable;
ifnonnull 81
79: aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
80: goto 13
81: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 4
start local 4 82: aload 0
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
astore 6
start local 6 83: aload 0
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
astore 7
start local 7 84: aload 0
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
astore 8
start local 8 85: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 9
start local 9 86: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromSerialNo:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 9
invokespecial java.lang.Integer.<init>:(I)V
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 10
start local 10 87: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 11
start local 11 88: iload 11
bipush -3
if_icmpge 91
89: aload 0
new java.lang.StringBuilder
dup
ldc "Weird stack frame line number: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 11
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
90: iconst_m1
istore 11
91: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader int long long java.lang.String java.lang.String java.lang.String int java.lang.String int
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackFrames:Ljava/util/Hashtable;
new java.lang.Long
dup
lload 4
invokespecial java.lang.Long.<init>:(J)V
92: new com.sun.tools.hat.internal.model.StackFrame
dup
aload 6
aload 7
93: aload 10
aload 8
94: iload 11
95: invokespecial com.sun.tools.hat.internal.model.StackFrame.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
96: invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 4 97: goto 13
98: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader int long
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackTraces:Ljava/util/Hashtable;
ifnonnull 101
99: aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
100: goto 13
101: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 4
start local 4 102: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
pop
103: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
anewarray com.sun.tools.hat.internal.model.StackFrame
astore 5
start local 5 104: iconst_0
istore 6
start local 6 105: goto 111
106: StackMap locals: int com.sun.tools.hat.internal.model.StackFrame[] int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 7
start local 7 107: aload 5
iload 6
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackFrames:Ljava/util/Hashtable;
new java.lang.Long
dup
lload 7
invokespecial java.lang.Long.<init>:(J)V
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.hat.internal.model.StackFrame
aastore
108: aload 5
iload 6
aaload
ifnonnull 110
109: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Stack frame "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
lload 7
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 7 110: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
111: iload 6
aload 5
arraylength
if_icmplt 106
end local 6 112: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackTraces:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 4
invokespecial java.lang.Integer.<init>:(I)V
113: new com.sun.tools.hat.internal.model.StackTrace
dup
aload 5
invokespecial com.sun.tools.hat.internal.model.StackTrace.<init>:([Lcom/sun/tools/hat/internal/model/StackFrame;)V
114: invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 end local 4 115: goto 13
116: StackMap locals:
StackMap stack:
aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
117: goto 13
118: StackMap locals:
StackMap stack:
aload 0
lload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
119: aload 0
new java.lang.StringBuilder
dup
ldc "Ignoring unrecognized record type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
end local 2 end local 1 120: goto 13
121: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 122 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
14 15 1 type I
17 120 1 type I
19 120 2 length J
32 36 4 id J
33 36 6 chars [B
37 46 4 serialNo I
38 46 5 classID J
40 46 7 classNameID J
41 46 9 classIdI Ljava/lang/Long;
42 46 10 nm Ljava/lang/String;
50 51 4 exp Ljava/io/EOFException;
71 72 4 exp Ljava/io/EOFException;
82 97 4 id J
83 97 6 methodName Ljava/lang/String;
84 97 7 methodSig Ljava/lang/String;
85 97 8 sourceFile Ljava/lang/String;
86 97 9 classSer I
87 97 10 className Ljava/lang/String;
88 97 11 lineNumber I
102 115 4 serialNo I
104 115 5 frames [Lcom/sun/tools/hat/internal/model/StackFrame;
105 112 6 i I
107 110 7 fid J
Exception table:
from to target type
13 14 15 Class java.io.EOFException
47 48 49 Class java.io.EOFException
68 69 70 Class java.io.EOFException
Exceptions:
throws java.io.IOException
private void skipBytes(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
lload 1
l2i
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.skipBytes:(I)I
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 2 1 length J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
length
private int ();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=1
start local 0 0: getstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
arraylength
istore 1
start local 1 1: getstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
arraylength
newarray 4
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: int boolean[] int
StackMap stack:
aload 2
iload 3
iconst_1
bastore
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iload 1
if_icmplt 4
end local 3 7: iconst_0
istore 3
start local 3 8: goto 23
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
i2c
istore 4
start local 4 10: aload 0
dup
getfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
lconst_1
ladd
putfield com.sun.tools.hat.internal.parser.HprofReader.currPos:J
11: iconst_0
istore 5
start local 5 12: goto 21
13: StackMap locals: int int
StackMap stack:
aload 2
iload 5
baload
ifeq 20
14: iload 4
getstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
iload 5
aaload
iload 3
invokevirtual java.lang.String.charAt:(I)C
if_icmpeq 18
15: aload 2
iload 5
iconst_0
bastore
16: iinc 1 -1
17: goto 20
StackMap locals:
StackMap stack:
18: iload 3
getstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
iload 5
aaload
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 20
19: iload 5
ireturn
20: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
21: iload 5
getstatic com.sun.tools.hat.internal.parser.HprofReader.VERSIONS:[Ljava/lang/String;
arraylength
if_icmplt 13
end local 5 22: iinc 3 1
end local 4 23: StackMap locals:
StackMap stack:
iload 1
ifgt 9
24: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Version string not recognized at byte "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
iconst_3
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
1 25 1 candidatesLeft I
2 25 2 matched [Z
3 7 3 i I
8 25 3 pos I
10 23 4 c C
12 22 5 i I
Exceptions:
throws java.io.IOException
private void readHeapDump(long, long);
descriptor: (JJ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=12, args_size=3
start local 0 start local 1 start local 3 0: goto 89
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedByte:()I
istore 5
start local 5 2: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
ifle 7
3: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc " Read heap sub-record type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
4: ldc " at position "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: aload 0
lload 3
lload 1
lsub
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
7: StackMap locals: int
StackMap stack:
lload 1
lconst_1
lsub
lstore 1
8: iload 5
lookupswitch { // 13
1: 21
2: 26
3: 38
4: 50
5: 59
6: 63
7: 72
8: 13
32: 76
33: 79
34: 82
35: 85
255: 9
default: 88
}
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 10: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
i2l
lsub
lstore 1
11: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
lconst_0
iconst_1
ldc ""
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;)V
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
12: goto 89
end local 6 13: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 14: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 15: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 9
start local 9 16: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
bipush 8
iadd
i2l
lsub
lstore 1
17: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.threadObjects:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 8
invokespecial java.lang.Integer.<init>:(I)V
18: new com.sun.tools.hat.internal.parser.HprofReader$ThreadObject
dup
aload 0
lload 6
iload 9
invokespecial com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.<init>:(Lcom/sun/tools/hat/internal/parser/HprofReader;JI)V
19: invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
20: goto 89
end local 9 end local 8 end local 6 21: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 22: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
pop2
23: lload 1
iconst_2
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
imul
i2l
lsub
lstore 1
24: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
lconst_0
iconst_4
ldc ""
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;)V
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
25: goto 89
end local 6 26: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 27: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 28: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 9
start local 9 29: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
bipush 8
iadd
i2l
lsub
lstore 1
30: aload 0
iload 8
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getThreadObjectFromSequence:(I)Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
astore 10
start local 10 31: aload 0
aload 10
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.stackSeq:I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 11
start local 11 32: aload 11
ifnull 34
33: aload 11
iload 9
iconst_1
iadd
invokevirtual com.sun.tools.hat.internal.model.StackTrace.traceForDepth:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 11
34: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long long int long int int com.sun.tools.hat.internal.parser.HprofReader$ThreadObject com.sun.tools.hat.internal.model.StackTrace
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
aload 10
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.threadId:J
35: iconst_3
ldc ""
aload 11
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;Lcom/sun/tools/hat/internal/model/StackTrace;)V
36: invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
37: goto 89
end local 11 end local 10 end local 9 end local 8 end local 6 38: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long long int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 39: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 40: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 9
start local 9 41: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
bipush 8
iadd
i2l
lsub
lstore 1
42: aload 0
iload 8
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getThreadObjectFromSequence:(I)Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
astore 10
start local 10 43: aload 0
aload 10
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.stackSeq:I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 11
start local 11 44: aload 11
ifnull 46
45: aload 11
iload 9
iconst_1
iadd
invokevirtual com.sun.tools.hat.internal.model.StackTrace.traceForDepth:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 11
46: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long long int long int int com.sun.tools.hat.internal.parser.HprofReader$ThreadObject com.sun.tools.hat.internal.model.StackTrace
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
aload 10
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.threadId:J
47: bipush 7
ldc ""
aload 11
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;Lcom/sun/tools/hat/internal/model/StackTrace;)V
48: invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
49: goto 89
end local 11 end local 10 end local 9 end local 8 end local 6 50: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long long int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 51: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 52: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iconst_4
iadd
i2l
lsub
lstore 1
53: aload 0
iload 8
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getThreadObjectFromSequence:(I)Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
astore 9
start local 9 54: aload 0
aload 9
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.stackSeq:I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 10
start local 10 55: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
aload 9
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.threadId:J
56: bipush 8
ldc ""
aload 10
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;Lcom/sun/tools/hat/internal/model/StackTrace;)V
57: invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
58: goto 89
end local 10 end local 9 end local 8 end local 6 59: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 60: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
i2l
lsub
lstore 1
61: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
lconst_0
iconst_2
ldc ""
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;)V
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
62: goto 89
end local 6 63: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 64: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 65: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iconst_4
iadd
i2l
lsub
lstore 1
66: aload 0
iload 8
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getThreadObjectFromSequence:(I)Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
astore 9
start local 9 67: aload 0
aload 9
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.stackSeq:I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 10
start local 10 68: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
aload 9
getfield com.sun.tools.hat.internal.parser.HprofReader$ThreadObject.threadId:J
69: iconst_5
ldc ""
aload 10
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;Lcom/sun/tools/hat/internal/model/StackTrace;)V
70: invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
71: goto 89
end local 10 end local 9 end local 8 end local 6 72: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 73: lload 1
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
i2l
lsub
lstore 1
74: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
new com.sun.tools.hat.internal.model.Root
dup
lload 6
lconst_0
bipush 6
ldc ""
invokespecial com.sun.tools.hat.internal.model.Root.<init>:(JJILjava/lang/String;)V
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addRoot:(Lcom/sun/tools/hat/internal/model/Root;)V
75: goto 89
end local 6 76: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readClass:()I
istore 6
start local 6 77: lload 1
iload 6
i2l
lsub
lstore 1
78: goto 89
end local 6 79: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readInstance:()I
istore 6
start local 6 80: lload 1
iload 6
i2l
lsub
lstore 1
81: goto 89
end local 6 82: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readArray:(Z)I
istore 6
start local 6 83: lload 1
iload 6
i2l
lsub
lstore 1
84: goto 89
end local 6 85: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readArray:(Z)I
istore 6
start local 6 86: lload 1
iload 6
i2l
lsub
lstore 1
87: goto 89
end local 6 88: StackMap locals:
StackMap stack:
new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Unrecognized heap dump sub-record type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 5 89: StackMap locals:
StackMap stack:
lload 1
lconst_0
lcmp
ifgt 1
90: lload 1
lconst_0
lcmp
ifeq 93
91: aload 0
new java.lang.StringBuilder
dup
ldc "Error reading heap dump or heap dump segment: Byte count is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " instead of 0"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
92: aload 0
lload 1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
93: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
ifle 95
94: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc " Finished heap sub-records."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
95: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 96 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 96 1 bytesLeft J
0 96 3 posAtEnd J
2 89 5 type I
10 13 6 id J
14 21 6 id J
15 21 8 threadSeq I
16 21 9 stackSeq I
22 26 6 id J
27 38 6 id J
28 38 8 threadSeq I
29 38 9 depth I
31 38 10 to Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
32 38 11 st Lcom/sun/tools/hat/internal/model/StackTrace;
39 50 6 id J
40 50 8 threadSeq I
41 50 9 depth I
43 50 10 to Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
44 50 11 st Lcom/sun/tools/hat/internal/model/StackTrace;
51 59 6 id J
52 59 8 threadSeq I
54 59 9 to Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
55 59 10 st Lcom/sun/tools/hat/internal/model/StackTrace;
60 63 6 id J
64 72 6 id J
65 72 8 threadSeq I
67 72 9 to Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
68 72 10 st Lcom/sun/tools/hat/internal/model/StackTrace;
73 76 6 id J
77 79 6 bytesRead I
80 82 6 bytesRead I
83 85 6 bytesRead I
86 88 6 bytesRead I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
bytesLeft
posAtEnd
private long readID();
descriptor: ()J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iconst_4
if_icmpne 2
1: getstatic com.sun.tools.hat.internal.model.Snapshot.SMALL_ID_MASK:J
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
i2l
land
goto 3
StackMap locals:
StackMap stack:
2: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readLong:()J
3: StackMap locals:
StackMap stack: long
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
Exceptions:
throws java.io.IOException
private int readValue(com.sun.tools.hat.internal.model.JavaThing[]);
descriptor: ([Lcom/sun/tools/hat/internal/model/JavaThing;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
istore 2
start local 2 1: iconst_1
aload 0
iload 2
aload 1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readValueForType:(B[Lcom/sun/tools/hat/internal/model/JavaThing;)I
iadd
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 2 1 resultArr [Lcom/sun/tools/hat/internal/model/JavaThing;
1 2 2 type B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
resultArr
private int readValueForType(byte, com.sun.tools.hat.internal.model.JavaThing[]);
descriptor: (B[Lcom/sun/tools/hat/internal/model/JavaThing;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmplt 2
1: aload 0
iload 1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.signatureFromTypeId:(B)B
istore 1
2: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 2
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readValueForTypeSignature:(B[Lcom/sun/tools/hat/internal/model/JavaThing;)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 3 1 type B
0 3 2 resultArr [Lcom/sun/tools/hat/internal/model/JavaThing;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
resultArr
private int readValueForTypeSignature(byte, com.sun.tools.hat.internal.model.JavaThing[]);
descriptor: (B[Lcom/sun/tools/hat/internal/model/JavaThing;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
lookupswitch { // 10
66: 14
67: 22
68: 38
70: 34
73: 26
74: 30
76: 1
83: 18
90: 5
91: 1
default: 42
}
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 3
start local 3 2: aload 2
ifnull 4
3: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaObjectRef
dup
lload 3
invokespecial com.sun.tools.hat.internal.model.JavaObjectRef.<init>:(J)V
aastore
4: StackMap locals: long
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
ireturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
istore 3
start local 3 6: iload 3
ifeq 8
iload 3
iconst_1
if_icmpeq 8
7: aload 0
ldc "Illegal boolean value read"
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
8: StackMap locals: int
StackMap stack:
aload 2
ifnull 13
9: aload 2
iconst_0
10: new com.sun.tools.hat.internal.model.JavaBoolean
dup
iload 3
ifeq 11
iconst_1
goto 12
StackMap locals: com.sun.tools.hat.internal.parser.HprofReader int com.sun.tools.hat.internal.model.JavaThing[] int
StackMap stack: com.sun.tools.hat.internal.model.JavaThing[] int new 10 new 10
11: iconst_0
StackMap locals: com.sun.tools.hat.internal.parser.HprofReader int com.sun.tools.hat.internal.model.JavaThing[] int
StackMap stack: com.sun.tools.hat.internal.model.JavaThing[] int new 10 new 10 int
12: invokespecial com.sun.tools.hat.internal.model.JavaBoolean.<init>:(Z)V
aastore
13: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
istore 3
start local 3 15: aload 2
ifnull 17
16: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaByte
dup
iload 3
invokespecial com.sun.tools.hat.internal.model.JavaByte.<init>:(B)V
aastore
17: StackMap locals: int
StackMap stack:
iconst_1
ireturn
end local 3 18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readShort:()S
istore 3
start local 3 19: aload 2
ifnull 21
20: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaShort
dup
iload 3
invokespecial com.sun.tools.hat.internal.model.JavaShort.<init>:(S)V
aastore
21: StackMap locals: int
StackMap stack:
iconst_2
ireturn
end local 3 22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readChar:()C
istore 3
start local 3 23: aload 2
ifnull 25
24: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaChar
dup
iload 3
invokespecial com.sun.tools.hat.internal.model.JavaChar.<init>:(C)V
aastore
25: StackMap locals: int
StackMap stack:
iconst_2
ireturn
end local 3 26: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 3
start local 3 27: aload 2
ifnull 29
28: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaInt
dup
iload 3
invokespecial com.sun.tools.hat.internal.model.JavaInt.<init>:(I)V
aastore
29: StackMap locals: int
StackMap stack:
iconst_4
ireturn
end local 3 30: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readLong:()J
lstore 3
start local 3 31: aload 2
ifnull 33
32: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaLong
dup
lload 3
invokespecial com.sun.tools.hat.internal.model.JavaLong.<init>:(J)V
aastore
33: StackMap locals: long
StackMap stack:
bipush 8
ireturn
end local 3 34: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readFloat:()F
fstore 3
start local 3 35: aload 2
ifnull 37
36: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaFloat
dup
fload 3
invokespecial com.sun.tools.hat.internal.model.JavaFloat.<init>:(F)V
aastore
37: StackMap locals: float
StackMap stack:
iconst_4
ireturn
end local 3 38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readDouble:()D
dstore 3
start local 3 39: aload 2
ifnull 41
40: aload 2
iconst_0
new com.sun.tools.hat.internal.model.JavaDouble
dup
dload 3
invokespecial com.sun.tools.hat.internal.model.JavaDouble.<init>:(D)V
aastore
41: StackMap locals: double
StackMap stack:
bipush 8
ireturn
end local 3 42: StackMap locals:
StackMap stack:
new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Bad value signature: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 43 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 43 1 type B
0 43 2 resultArr [Lcom/sun/tools/hat/internal/model/JavaThing;
2 5 3 id J
6 14 3 b I
15 18 3 b B
19 22 3 s S
23 26 3 ch C
27 30 3 val I
31 34 3 val J
35 38 3 val F
39 42 3 val D
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
resultArr
private com.sun.tools.hat.internal.parser.HprofReader$ThreadObject getThreadObjectFromSequence(int);
descriptor: (I)Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.threadObjects:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.hat.internal.parser.HprofReader$ThreadObject
astore 2
start local 2 1: aload 2
ifnonnull 5
2: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Thread "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
3: ldc " not found for JNI local ref"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader$ThreadObject
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 6 1 threadSeq I
1 6 2 to Lcom/sun/tools/hat/internal/parser/HprofReader$ThreadObject;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
threadSeq
private java.lang.String getNameFromID(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
new java.lang.Long
dup
lload 1
invokespecial java.lang.Long.<init>:(J)V
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(Ljava/lang/Long;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 1 1 id J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
private java.lang.String getNameFromID(java.lang.Long);
descriptor: (Ljava/lang/Long;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Long.longValue:()J
lconst_0
lcmp
ifne 2
1: ldc ""
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.names:Ljava/util/Hashtable;
aload 1
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 3: aload 2
ifnonnull 6
4: aload 0
new java.lang.StringBuilder
dup
ldc "Name not found at "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokevirtual java.lang.Long.longValue:()J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
5: new java.lang.StringBuilder
dup
ldc "unresolved name "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokevirtual java.lang.Long.longValue:()J
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
6: StackMap locals: java.lang.String
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 7 1 id Ljava/lang/Long;
3 7 2 result Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
private com.sun.tools.hat.internal.model.StackTrace getStackTraceFromSerial(int);
descriptor: (I)Lcom/sun/tools/hat/internal/model/StackTrace;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackTraces:Ljava/util/Hashtable;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.stackTraces:Ljava/util/Hashtable;
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.hat.internal.model.StackTrace
astore 2
start local 2 3: aload 2
ifnonnull 5
4: aload 0
new java.lang.StringBuilder
dup
ldc "Stack trace not found for serial # "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
5: StackMap locals: com.sun.tools.hat.internal.model.StackTrace
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 6 1 ser I
3 6 2 result Lcom/sun/tools/hat/internal/model/StackTrace;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ser
private int readClass();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=16, locals=26, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 1
start local 1 1: aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 3
start local 3 2: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 4
start local 4 3: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 4: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 8
start local 8 5: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 10
start local 10 6: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
pop2
7: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
pop2
8: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 12
start local 12 9: bipush 7
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
imul
bipush 8
iadd
istore 13
start local 13 10: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedShort:()I
istore 14
start local 14 11: iinc 13 2
12: iconst_0
istore 15
start local 15 13: goto 18
14: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long com.sun.tools.hat.internal.model.StackTrace long long long long int int int int
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedShort:()I
pop
15: iinc 13 2
16: iload 13
aload 0
aconst_null
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readValue:([Lcom/sun/tools/hat/internal/model/JavaThing;)I
iadd
istore 13
17: iinc 15 1
StackMap locals:
StackMap stack:
18: iload 15
iload 14
if_icmplt 14
end local 15 19: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedShort:()I
istore 15
start local 15 20: iinc 13 2
21: iconst_1
anewarray com.sun.tools.hat.internal.model.JavaThing
astore 16
start local 16 22: iload 15
anewarray com.sun.tools.hat.internal.model.JavaStatic
astore 17
start local 17 23: iconst_0
istore 18
start local 18 24: goto 37
25: StackMap locals: com.sun.tools.hat.internal.model.JavaThing[] com.sun.tools.hat.internal.model.JavaStatic[] int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 19
start local 19 26: iload 13
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iadd
istore 13
27: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
istore 21
start local 21 28: iinc 13 1
29: iload 13
aload 0
iload 21
aload 16
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readValueForType:(B[Lcom/sun/tools/hat/internal/model/JavaThing;)I
iadd
istore 13
30: aload 0
lload 19
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
astore 22
start local 22 31: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmplt 33
32: aload 0
iload 21
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.signatureFromTypeId:(B)B
istore 21
33: StackMap locals: long int java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iload 21
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 23
start local 23 34: new com.sun.tools.hat.internal.model.JavaField
dup
aload 22
aload 23
invokespecial com.sun.tools.hat.internal.model.JavaField.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 24
start local 24 35: aload 17
iload 18
new com.sun.tools.hat.internal.model.JavaStatic
dup
aload 24
aload 16
iconst_0
aaload
invokespecial com.sun.tools.hat.internal.model.JavaStatic.<init>:(Lcom/sun/tools/hat/internal/model/JavaField;Lcom/sun/tools/hat/internal/model/JavaThing;)V
aastore
end local 24 end local 23 end local 22 end local 21 end local 19 36: iinc 18 1
StackMap locals:
StackMap stack:
37: iload 18
iload 15
if_icmplt 25
end local 18 38: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readUnsignedShort:()I
istore 18
start local 18 39: iinc 13 2
40: iload 18
anewarray com.sun.tools.hat.internal.model.JavaField
astore 19
start local 19 41: iconst_0
istore 20
start local 20 42: goto 53
43: StackMap locals: com.sun.tools.hat.internal.model.JavaField[] int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 21
start local 21 44: iload 13
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iadd
istore 13
45: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
istore 23
start local 23 46: iinc 13 1
47: aload 0
lload 21
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getNameFromID:(J)Ljava/lang/String;
astore 24
start local 24 48: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmplt 50
49: aload 0
iload 23
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.signatureFromTypeId:(B)B
istore 23
50: StackMap locals: long int java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iload 23
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 25
start local 25 51: aload 19
iload 20
new com.sun.tools.hat.internal.model.JavaField
dup
aload 24
aload 25
invokespecial com.sun.tools.hat.internal.model.JavaField.<init>:(Ljava/lang/String;Ljava/lang/String;)V
aastore
end local 25 end local 24 end local 23 end local 21 52: iinc 20 1
StackMap locals:
StackMap stack:
53: iload 20
iload 18
if_icmplt 43
end local 20 54: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.classNameFromObjectID:Ljava/util/Hashtable;
new java.lang.Long
dup
lload 1
invokespecial java.lang.Long.<init>:(J)V
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 20
start local 20 55: aload 20
ifnonnull 58
56: aload 0
new java.lang.StringBuilder
dup
ldc "Class name not found for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
lload 1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
57: new java.lang.StringBuilder
dup
ldc "unknown-name@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
lload 1
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.toHex:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 20
58: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader long com.sun.tools.hat.internal.model.StackTrace long long long long int int int int com.sun.tools.hat.internal.model.JavaThing[] com.sun.tools.hat.internal.model.JavaStatic[] int com.sun.tools.hat.internal.model.JavaField[] java.lang.String
StackMap stack:
new com.sun.tools.hat.internal.model.JavaClass
dup
lload 1
aload 20
lload 4
lload 6
lload 8
59: lload 10
aload 19
aload 17
60: iload 12
61: invokespecial com.sun.tools.hat.internal.model.JavaClass.<init>:(JLjava/lang/String;JJJJ[Lcom/sun/tools/hat/internal/model/JavaField;[Lcom/sun/tools/hat/internal/model/JavaStatic;I)V
astore 21
start local 21 62: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
lload 1
aload 21
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addClass:(JLcom/sun/tools/hat/internal/model/JavaClass;)V
63: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 21
aload 3
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setSiteTrace:(Lcom/sun/tools/hat/internal/model/JavaHeapObject;Lcom/sun/tools/hat/internal/model/StackTrace;)V
64: iload 13
ireturn
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 10 end local 8 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
1 65 1 id J
2 65 3 stackTrace Lcom/sun/tools/hat/internal/model/StackTrace;
3 65 4 superId J
4 65 6 classLoaderId J
5 65 8 signersId J
6 65 10 protDomainId J
9 65 12 instanceSize I
10 65 13 bytesRead I
11 65 14 numConstPoolEntries I
13 19 15 i I
20 65 15 numStatics I
22 65 16 valueBin [Lcom/sun/tools/hat/internal/model/JavaThing;
23 65 17 statics [Lcom/sun/tools/hat/internal/model/JavaStatic;
24 38 18 i I
26 36 19 nameId J
28 36 21 type B
31 36 22 fieldName Ljava/lang/String;
34 36 23 signature Ljava/lang/String;
35 36 24 f Lcom/sun/tools/hat/internal/model/JavaField;
39 65 18 numFields I
41 65 19 fields [Lcom/sun/tools/hat/internal/model/JavaField;
42 54 20 i I
44 52 21 nameId J
46 52 23 type B
48 52 24 fieldName Ljava/lang/String;
51 52 25 signature Ljava/lang/String;
55 65 20 name Ljava/lang/String;
62 65 21 c Lcom/sun/tools/hat/internal/model/JavaClass;
Exceptions:
throws java.io.IOException
private java.lang.String toHex(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: lload 1
invokestatic com.sun.tools.hat.internal.util.Misc.toHex:(J)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 1 1 addr J
MethodParameters:
Name Flags
addr
private int readInstance();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.position:()J
lstore 1
start local 1 1: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 3
start local 3 2: aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 5
start local 5 3: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 6
start local 6 4: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 8
start local 8 5: iconst_2
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
imul
bipush 8
iadd
iload 8
iadd
istore 9
start local 9 6: new com.sun.tools.hat.internal.model.JavaObject
dup
lload 6
lload 1
invokespecial com.sun.tools.hat.internal.model.JavaObject.<init>:(JJ)V
astore 10
start local 10 7: aload 0
iload 8
i2l
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
8: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
lload 3
aload 10
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addHeapObject:(JLcom/sun/tools/hat/internal/model/JavaHeapObject;)V
9: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 10
aload 5
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setSiteTrace:(Lcom/sun/tools/hat/internal/model/JavaHeapObject;Lcom/sun/tools/hat/internal/model/StackTrace;)V
10: iload 9
ireturn
end local 10 end local 9 end local 8 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
1 11 1 start J
2 11 3 id J
3 11 5 stackTrace Lcom/sun/tools/hat/internal/model/StackTrace;
4 11 6 classID J
5 11 8 bytesFollowing I
6 11 9 bytesRead I
7 11 10 jobj Lcom/sun/tools/hat/internal/model/JavaObject;
Exceptions:
throws java.io.IOException
private int readArray(boolean);
descriptor: (Z)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=15, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.position:()J
lstore 2
start local 2 1: aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 4
start local 4 2: aload 0
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.getStackTraceFromSerial:(I)Lcom/sun/tools/hat/internal/model/StackTrace;
astore 6
start local 6 3: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readInt:()I
istore 7
start local 7 4: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
bipush 8
iadd
istore 8
start local 8 5: iload 1
ifeq 9
6: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.in:Lcom/sun/tools/hat/internal/parser/PositionDataInputStream;
invokevirtual com.sun.tools.hat.internal.parser.PositionDataInputStream.readByte:()B
i2l
lstore 9
start local 9 7: iinc 8 1
8: goto 11
end local 9 9: StackMap locals: com.sun.tools.hat.internal.parser.HprofReader int long long com.sun.tools.hat.internal.model.StackTrace int int
StackMap stack:
aload 0
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.readID:()J
lstore 9
start local 9 10: iload 8
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
iadd
istore 8
11: StackMap locals: long
StackMap stack:
iconst_0
istore 11
start local 11 12: iconst_0
istore 12
start local 12 13: iload 1
ifne 14
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmpge 42
14: StackMap locals: int int
StackMap stack:
lload 9
l2i
tableswitch { // 4 - 11
4: 15
5: 18
6: 21
7: 24
8: 27
9: 30
10: 33
11: 36
default: 38
}
15: StackMap locals:
StackMap stack:
bipush 90
istore 11
16: iconst_1
istore 12
17: goto 38
18: StackMap locals:
StackMap stack:
bipush 67
istore 11
19: iconst_2
istore 12
20: goto 38
21: StackMap locals:
StackMap stack:
bipush 70
istore 11
22: iconst_4
istore 12
23: goto 38
24: StackMap locals:
StackMap stack:
bipush 68
istore 11
25: bipush 8
istore 12
26: goto 38
27: StackMap locals:
StackMap stack:
bipush 66
istore 11
28: iconst_1
istore 12
29: goto 38
30: StackMap locals:
StackMap stack:
bipush 83
istore 11
31: iconst_2
istore 12
32: goto 38
33: StackMap locals:
StackMap stack:
bipush 73
istore 11
34: iconst_4
istore 12
35: goto 38
36: StackMap locals:
StackMap stack:
bipush 74
istore 11
37: bipush 8
istore 12
38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.version:I
iconst_1
if_icmplt 42
iload 11
ifne 42
39: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Unrecognized typecode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
40: lload 9
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
41: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
42: StackMap locals:
StackMap stack:
iload 11
ifeq 50
43: iload 12
iload 7
imul
istore 13
start local 13 44: iload 8
iload 13
iadd
istore 8
45: new com.sun.tools.hat.internal.model.JavaValueArray
dup
iload 11
lload 2
invokespecial com.sun.tools.hat.internal.model.JavaValueArray.<init>:(BJ)V
astore 14
start local 14 46: aload 0
iload 13
i2l
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
47: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
lload 4
aload 14
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addHeapObject:(JLcom/sun/tools/hat/internal/model/JavaHeapObject;)V
48: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 14
aload 6
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setSiteTrace:(Lcom/sun/tools/hat/internal/model/JavaHeapObject;Lcom/sun/tools/hat/internal/model/StackTrace;)V
end local 14 end local 13 49: goto 56
50: StackMap locals:
StackMap stack:
iload 7
aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.identifierSize:I
imul
istore 13
start local 13 51: iload 8
iload 13
iadd
istore 8
52: new com.sun.tools.hat.internal.model.JavaObjectArray
dup
lload 9
lload 2
invokespecial com.sun.tools.hat.internal.model.JavaObjectArray.<init>:(JJ)V
astore 14
start local 14 53: aload 0
iload 13
i2l
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.skipBytes:(J)V
54: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
lload 4
aload 14
invokevirtual com.sun.tools.hat.internal.model.Snapshot.addHeapObject:(JLcom/sun/tools/hat/internal/model/JavaHeapObject;)V
55: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 14
aload 6
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setSiteTrace:(Lcom/sun/tools/hat/internal/model/JavaHeapObject;Lcom/sun/tools/hat/internal/model/StackTrace;)V
end local 14 end local 13 56: StackMap locals:
StackMap stack:
iload 8
ireturn
end local 12 end local 11 end local 9 end local 8 end local 7 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 57 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 57 1 isPrimitive Z
1 57 2 start J
2 57 4 id J
3 57 6 stackTrace Lcom/sun/tools/hat/internal/model/StackTrace;
4 57 7 num I
5 57 8 bytesRead I
7 9 9 elementClassID J
10 57 9 elementClassID J
12 57 11 primitiveSignature B
13 57 12 elSize I
44 49 13 size I
46 49 14 va Lcom/sun/tools/hat/internal/model/JavaValueArray;
51 56 13 sz I
53 56 14 arr Lcom/sun/tools/hat/internal/model/JavaObjectArray;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
isPrimitive
private byte signatureFromTypeId(byte);
descriptor: (B)B
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
tableswitch { // 2 - 11
2: 1
3: 10
4: 2
5: 3
6: 4
7: 5
8: 6
9: 7
10: 8
11: 9
default: 10
}
1: StackMap locals:
StackMap stack:
bipush 76
ireturn
2: StackMap locals:
StackMap stack:
bipush 90
ireturn
3: StackMap locals:
StackMap stack:
bipush 67
ireturn
4: StackMap locals:
StackMap stack:
bipush 70
ireturn
5: StackMap locals:
StackMap stack:
bipush 68
ireturn
6: StackMap locals:
StackMap stack:
bipush 66
ireturn
7: StackMap locals:
StackMap stack:
bipush 83
ireturn
8: StackMap locals:
StackMap stack:
bipush 73
ireturn
9: StackMap locals:
StackMap stack:
bipush 74
ireturn
10: StackMap locals:
StackMap stack:
new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Invalid type id of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 11 1 typeId B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
typeId
private void handleEOF(java.io.EOFException, com.sun.tools.hat.internal.model.Snapshot);
descriptor: (Ljava/io/EOFException;Lcom/sun/tools/hat/internal/model/Snapshot;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.hat.internal.parser.HprofReader.debugLevel:I
ifle 2
1: aload 1
invokevirtual java.io.EOFException.printStackTrace:()V
2: StackMap locals:
StackMap stack:
aload 0
ldc "Unexpected EOF. Will miss information..."
invokevirtual com.sun.tools.hat.internal.parser.HprofReader.warn:(Ljava/lang/String;)V
3: aload 2
iconst_1
invokevirtual com.sun.tools.hat.internal.model.Snapshot.setUnresolvedObjectsOK:(Z)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 5 1 exp Ljava/io/EOFException;
0 5 2 snapshot Lcom/sun/tools/hat/internal/model/Snapshot;
MethodParameters:
Name Flags
exp
snapshot
private void warn(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "WARNING: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/hat/internal/parser/HprofReader;
0 2 1 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
}
SourceFile: "HprofReader.java"
NestMembers:
com.sun.tools.hat.internal.parser.HprofReader$ThreadObject
InnerClasses:
private ThreadObject = com.sun.tools.hat.internal.parser.HprofReader$ThreadObject of com.sun.tools.hat.internal.parser.HprofReader