public class sun.jvm.hotspot.utilities.ReversePtrsAnalysis
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.ReversePtrsAnalysis
super_class: java.lang.Object
{
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private sun.jvm.hotspot.utilities.HeapProgressThunk progressThunk;
descriptor: Lsun/jvm/hotspot/utilities/HeapProgressThunk;
flags: (0x0002) ACC_PRIVATE
private long usedSize;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long visitedSize;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private double lastNotificationFraction;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private static final double MINIMUM_NOTIFICATION_FRACTION;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.01
private sun.jvm.hotspot.oops.ObjectHeap heap;
descriptor: Lsun/jvm/hotspot/oops/ObjectHeap;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.utilities.MarkBits markBits;
descriptor: Lsun/jvm/hotspot/utilities/MarkBits;
flags: (0x0002) ACC_PRIVATE
private int depth;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.utilities.ReversePtrs rp;
descriptor: Lsun/jvm/hotspot/utilities/ReversePtrs;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
public void setHeapProgressThunk(sun.jvm.hotspot.utilities.HeapProgressThunk);
descriptor: (Lsun/jvm/hotspot/utilities/HeapProgressThunk;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 2 1 thunk Lsun/jvm/hotspot/utilities/HeapProgressThunk;
MethodParameters:
Name Flags
thunk
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=1
start local 0 0: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getRevPtrs:()Lsun/jvm/hotspot/utilities/ReversePtrs;
ifnull 2
1: return
2: StackMap locals:
StackMap stack:
invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
astore 1
start local 1 3: aload 0
new sun.jvm.hotspot.utilities.ReversePtrs
dup
invokespecial sun.jvm.hotspot.utilities.ReversePtrs.<init>:()V
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.rp:Lsun/jvm/hotspot/utilities/ReversePtrs;
4: aload 1
aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.rp:Lsun/jvm/hotspot/utilities/ReversePtrs;
invokevirtual sun.jvm.hotspot.runtime.VM.setRevPtrs:(Lsun/jvm/hotspot/utilities/ReversePtrs;)V
5: aload 1
invokevirtual sun.jvm.hotspot.runtime.VM.getUniverse:()Lsun/jvm/hotspot/memory/Universe;
astore 2
start local 2 6: aload 2
invokevirtual sun.jvm.hotspot.memory.Universe.heap:()Lsun/jvm/hotspot/gc/shared/CollectedHeap;
astore 3
start local 3 7: aload 0
aload 3
invokevirtual sun.jvm.hotspot.gc.shared.CollectedHeap.used:()J
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.usedSize:J
8: aload 0
lconst_0
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.visitedSize:J
9: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
ifnull 11
10: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
dconst_0
invokeinterface sun.jvm.hotspot.utilities.HeapProgressThunk.heapIterationFractionUpdate:(D)V
11: StackMap locals: sun.jvm.hotspot.runtime.VM sun.jvm.hotspot.memory.Universe sun.jvm.hotspot.gc.shared.CollectedHeap
StackMap stack:
aload 0
new sun.jvm.hotspot.utilities.MarkBits
dup
aload 3
invokespecial sun.jvm.hotspot.utilities.MarkBits.<init>:(Lsun/jvm/hotspot/gc/shared/CollectedHeap;)V
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.markBits:Lsun/jvm/hotspot/utilities/MarkBits;
12: aload 0
aload 1
invokevirtual sun.jvm.hotspot.runtime.VM.getObjectHeap:()Lsun/jvm/hotspot/oops/ObjectHeap;
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.heap:Lsun/jvm/hotspot/oops/ObjectHeap;
13: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getThreads:()Lsun/jvm/hotspot/runtime/Threads;
invokevirtual sun.jvm.hotspot.runtime.Threads.first:()Lsun/jvm/hotspot/runtime/JavaThread;
astore 4
start local 4 14: goto 28
15: StackMap locals: sun.jvm.hotspot.runtime.JavaThread
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 5
start local 5 16: aload 4
new java.io.PrintStream
dup
aload 5
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
invokevirtual sun.jvm.hotspot.runtime.JavaThread.printThreadIDOn:(Ljava/io/PrintStream;)V
17: new java.lang.StringBuilder
dup
ldc " in thread \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getThreadName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: ldc "\" (id "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: astore 6
start local 6 21: aload 0
aload 4
22: new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor
dup
aload 0
new java.lang.StringBuilder
dup
ldc "Stack root"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;Ljava/lang/String;)V
23: invokevirtual sun.jvm.hotspot.utilities.ReversePtrsAnalysis.doStack:(Lsun/jvm/hotspot/runtime/JavaThread;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
24: aload 0
aload 4
invokevirtual sun.jvm.hotspot.runtime.JavaThread.activeHandles:()Lsun/jvm/hotspot/runtime/JNIHandleBlock;
25: new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor
dup
aload 0
new java.lang.StringBuilder
dup
ldc "JNI handle root"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;Ljava/lang/String;)V
26: invokevirtual sun.jvm.hotspot.utilities.ReversePtrsAnalysis.doJNIHandleBlock:(Lsun/jvm/hotspot/runtime/JNIHandleBlock;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
end local 6 end local 5 27: aload 4
invokevirtual sun.jvm.hotspot.runtime.JavaThread.next:()Lsun/jvm/hotspot/runtime/JavaThread;
astore 4
28: StackMap locals:
StackMap stack:
aload 4
ifnonnull 15
end local 4 29: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getJNIHandles:()Lsun/jvm/hotspot/runtime/JNIHandles;
astore 4
start local 4 30: aload 0
aload 4
invokevirtual sun.jvm.hotspot.runtime.JNIHandles.globalHandles:()Lsun/jvm/hotspot/gc/shared/OopStorage;
31: new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor
dup
aload 0
ldc "Global JNI handle root"
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;Ljava/lang/String;)V
32: invokevirtual sun.jvm.hotspot.utilities.ReversePtrsAnalysis.doOopStorage:(Lsun/jvm/hotspot/gc/shared/OopStorage;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
33: aload 0
aload 4
invokevirtual sun.jvm.hotspot.runtime.JNIHandles.weakGlobalHandles:()Lsun/jvm/hotspot/gc/shared/OopStorage;
34: new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor
dup
aload 0
ldc "Weak global JNI handle root"
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;Ljava/lang/String;)V
35: invokevirtual sun.jvm.hotspot.utilities.ReversePtrsAnalysis.doOopStorage:(Lsun/jvm/hotspot/gc/shared/OopStorage;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
36: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getClassLoaderDataGraph:()Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
astore 5
start local 5 37: aload 5
new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$1
dup
aload 0
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$1.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;)V
invokevirtual sun.jvm.hotspot.classfile.ClassLoaderDataGraph.classesDo:(Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph$ClassVisitor;)V
38: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
ifnull 40
39: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
invokeinterface sun.jvm.hotspot.utilities.HeapProgressThunk.heapIterationComplete:()V
40: StackMap locals: sun.jvm.hotspot.utilities.ReversePtrsAnalysis sun.jvm.hotspot.runtime.VM sun.jvm.hotspot.memory.Universe sun.jvm.hotspot.gc.shared.CollectedHeap sun.jvm.hotspot.runtime.JNIHandles sun.jvm.hotspot.classfile.ClassLoaderDataGraph
StackMap stack:
aload 0
aconst_null
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.markBits:Lsun/jvm/hotspot/utilities/MarkBits;
41: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
3 42 1 vm Lsun/jvm/hotspot/runtime/VM;
6 42 2 universe Lsun/jvm/hotspot/memory/Universe;
7 42 3 collHeap Lsun/jvm/hotspot/gc/shared/CollectedHeap;
14 29 4 thread Lsun/jvm/hotspot/runtime/JavaThread;
16 27 5 bos Ljava/io/ByteArrayOutputStream;
21 27 6 threadDesc Ljava/lang/String;
30 42 4 handles Lsun/jvm/hotspot/runtime/JNIHandles;
37 42 5 cldg Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
private void markAndTraverse(sun.jvm.hotspot.debugger.OopHandle);
descriptor: (Lsun/jvm/hotspot/debugger/OopHandle;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.heap:Lsun/jvm/hotspot/oops/ObjectHeap;
aload 1
invokevirtual sun.jvm.hotspot.oops.ObjectHeap.newOop:(Lsun/jvm/hotspot/debugger/OopHandle;)Lsun/jvm/hotspot/oops/Oop;
invokevirtual sun.jvm.hotspot.utilities.ReversePtrsAnalysis.markAndTraverse:(Lsun/jvm/hotspot/oops/Oop;)V
1: goto 12
StackMap locals:
StackMap stack: sun.jvm.hotspot.debugger.AddressException
2: astore 2
start local 2 3: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "RevPtrs analysis: WARNING: AddressException at 0x"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 2
invokevirtual sun.jvm.hotspot.debugger.AddressException.getAddress:()J
invokestatic java.lang.Long.toHexString:(J)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " while traversing oop at "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 2 7: goto 12
8: StackMap locals:
StackMap stack: sun.jvm.hotspot.oops.UnknownOopException
pop
9: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "RevPtrs analysis: WARNING: UnknownOopException for oop at "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
10: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 13 1 handle Lsun/jvm/hotspot/debugger/OopHandle;
3 7 2 e Lsun/jvm/hotspot/debugger/AddressException;
Exception table:
from to target type
0 1 2 Class sun.jvm.hotspot.debugger.AddressException
0 1 8 Class sun.jvm.hotspot.oops.UnknownOopException
MethodParameters:
Name Flags
handle
private void ();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 4
2: StackMap locals: int
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc " "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
3: iinc 1 1
StackMap locals:
StackMap stack:
4: iload 1
aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.depth:I
if_icmplt 2
end local 1 5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
1 5 1 i I
private void markAndTraverse(sun.jvm.hotspot.oops.Oop);
descriptor: (Lsun/jvm/hotspot/oops/Oop;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.markBits:Lsun/jvm/hotspot/utilities/MarkBits;
aload 1
invokevirtual sun.jvm.hotspot.utilities.MarkBits.mark:(Lsun/jvm/hotspot/oops/Oop;)Z
ifne 4
3: return
4: StackMap locals:
StackMap stack:
new java.util.Stack
dup
invokespecial java.util.Stack.<init>:()V
astore 2
start local 2 5: aload 1
astore 3
start local 3 6: StackMap locals: java.util.Stack sun.jvm.hotspot.oops.Oop
StackMap stack:
aload 3
astore 4
start local 4 7: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
ifnull 14
8: aload 0
dup
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.visitedSize:J
aload 4
invokevirtual sun.jvm.hotspot.oops.Oop.getObjectSize:()J
ladd
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.visitedSize:J
9: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.visitedSize:J
l2d
aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.usedSize:J
l2d
ddiv
dstore 5
start local 5 10: dload 5
11: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.lastNotificationFraction:D
ldc 0.01
dadd
dcmpl
ifle 14
12: aload 0
getfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.progressThunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
dload 5
invokeinterface sun.jvm.hotspot.utilities.HeapProgressThunk.heapIterationFractionUpdate:(D)V
13: aload 0
dload 5
putfield sun.jvm.hotspot.utilities.ReversePtrsAnalysis.lastNotificationFraction:D
end local 5 14: StackMap locals: sun.jvm.hotspot.oops.Oop
StackMap stack:
aload 4
new sun.jvm.hotspot.utilities.ReversePtrsAnalysis$2
dup
aload 0
aload 4
aload 2
invokespecial sun.jvm.hotspot.utilities.ReversePtrsAnalysis$2.<init>:(Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;Lsun/jvm/hotspot/oops/Oop;Ljava/util/Stack;)V
15: iconst_0
16: invokevirtual sun.jvm.hotspot.oops.Oop.iterate:(Lsun/jvm/hotspot/oops/OopVisitor;Z)V
17: aload 2
invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
checkcast sun.jvm.hotspot.oops.Oop
astore 3
end local 4 18: goto 6
19: StackMap locals: sun.jvm.hotspot.utilities.ReversePtrsAnalysis sun.jvm.hotspot.oops.Oop java.util.Stack sun.jvm.hotspot.oops.Oop
StackMap stack: java.util.EmptyStackException
pop
goto 29
20: StackMap locals:
StackMap stack: java.lang.NullPointerException
astore 4
start local 4 21: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "ReversePtrs: WARNING: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
22: ldc " during traversal"
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
end local 4 24: goto 29
25: StackMap locals:
StackMap stack: java.lang.Exception
astore 4
start local 4 26: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "ReversePtrs: WARNING: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
27: ldc " during traversal"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
28: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 4 29: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 30 1 obj Lsun/jvm/hotspot/oops/Oop;
5 30 2 workList Ljava/util/Stack;
6 30 3 next Lsun/jvm/hotspot/oops/Oop;
7 18 4 currObj Lsun/jvm/hotspot/oops/Oop;
10 14 5 curFrac D
21 24 4 e Ljava/lang/NullPointerException;
26 29 4 e Ljava/lang/Exception;
Exception table:
from to target type
6 19 19 Class java.util.EmptyStackException
6 19 20 Class java.lang.NullPointerException
6 19 25 Class java.lang.Exception
MethodParameters:
Name Flags
obj final
private void doStack(sun.jvm.hotspot.runtime.JavaThread, sun.jvm.hotspot.runtime.AddressVisitor);
descriptor: (Lsun/jvm/hotspot/runtime/JavaThread;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new sun.jvm.hotspot.runtime.StackFrameStream
dup
aload 1
invokespecial sun.jvm.hotspot.runtime.StackFrameStream.<init>:(Lsun/jvm/hotspot/runtime/JavaThread;)V
astore 3
start local 3 1: goto 4
2: StackMap locals: sun.jvm.hotspot.runtime.StackFrameStream
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.runtime.StackFrameStream.getCurrent:()Lsun/jvm/hotspot/runtime/Frame;
aload 2
aload 3
invokevirtual sun.jvm.hotspot.runtime.StackFrameStream.getRegisterMap:()Lsun/jvm/hotspot/runtime/RegisterMap;
invokevirtual sun.jvm.hotspot.runtime.Frame.oopsDo:(Lsun/jvm/hotspot/runtime/AddressVisitor;Lsun/jvm/hotspot/runtime/RegisterMap;)V
3: aload 3
invokevirtual sun.jvm.hotspot.runtime.StackFrameStream.next:()V
StackMap locals:
StackMap stack:
4: aload 3
invokevirtual sun.jvm.hotspot.runtime.StackFrameStream.isDone:()Z
ifeq 2
end local 3 5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 6 1 thread Lsun/jvm/hotspot/runtime/JavaThread;
0 6 2 oopVisitor Lsun/jvm/hotspot/runtime/AddressVisitor;
1 5 3 fst Lsun/jvm/hotspot/runtime/StackFrameStream;
MethodParameters:
Name Flags
thread
oopVisitor
private void doJNIHandleBlock(sun.jvm.hotspot.runtime.JNIHandleBlock, sun.jvm.hotspot.runtime.AddressVisitor);
descriptor: (Lsun/jvm/hotspot/runtime/JNIHandleBlock;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual sun.jvm.hotspot.runtime.JNIHandleBlock.oopsDo:(Lsun/jvm/hotspot/runtime/AddressVisitor;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 2 1 handles Lsun/jvm/hotspot/runtime/JNIHandleBlock;
0 2 2 oopVisitor Lsun/jvm/hotspot/runtime/AddressVisitor;
MethodParameters:
Name Flags
handles
oopVisitor
private void doOopStorage(sun.jvm.hotspot.gc.shared.OopStorage, sun.jvm.hotspot.runtime.AddressVisitor);
descriptor: (Lsun/jvm/hotspot/gc/shared/OopStorage;Lsun/jvm/hotspot/runtime/AddressVisitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual sun.jvm.hotspot.gc.shared.OopStorage.oopsDo:(Lsun/jvm/hotspot/runtime/AddressVisitor;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/ReversePtrsAnalysis;
0 2 1 oopSet Lsun/jvm/hotspot/gc/shared/OopStorage;
0 2 2 oopVisitor Lsun/jvm/hotspot/runtime/AddressVisitor;
MethodParameters:
Name Flags
oopSet
oopVisitor
}
SourceFile: "ReversePtrsAnalysis.java"
NestMembers:
sun.jvm.hotspot.utilities.ReversePtrsAnalysis$1 sun.jvm.hotspot.utilities.ReversePtrsAnalysis$1$1 sun.jvm.hotspot.utilities.ReversePtrsAnalysis$2 sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor
InnerClasses:
public abstract ClassVisitor = sun.jvm.hotspot.classfile.ClassLoaderDataGraph$ClassVisitor of sun.jvm.hotspot.classfile.ClassLoaderDataGraph
sun.jvm.hotspot.utilities.ReversePtrsAnalysis$1
sun.jvm.hotspot.utilities.ReversePtrsAnalysis$2
RootVisitor = sun.jvm.hotspot.utilities.ReversePtrsAnalysis$RootVisitor of sun.jvm.hotspot.utilities.ReversePtrsAnalysis