public class sun.jvm.hotspot.utilities.ProgressiveHeapVisitor implements sun.jvm.hotspot.oops.HeapVisitor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.ProgressiveHeapVisitor
super_class: java.lang.Object
{
private sun.jvm.hotspot.oops.HeapVisitor userHeapVisitor;
descriptor: Lsun/jvm/hotspot/oops/HeapVisitor;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.utilities.HeapProgressThunk thunk;
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 double MINIMUM_NOTIFICATION_FRACTION;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc 0.01
putstatic sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.MINIMUM_NOTIFICATION_FRACTION:D
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(sun.jvm.hotspot.oops.HeapVisitor, sun.jvm.hotspot.utilities.HeapProgressThunk);
descriptor: (Lsun/jvm/hotspot/oops/HeapVisitor;Lsun/jvm/hotspot/utilities/HeapProgressThunk;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.userHeapVisitor:Lsun/jvm/hotspot/oops/HeapVisitor;
2: aload 0
aload 2
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.thunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/utilities/ProgressiveHeapVisitor;
0 4 1 userHeapVisitor Lsun/jvm/hotspot/oops/HeapVisitor;
0 4 2 thunk Lsun/jvm/hotspot/utilities/HeapProgressThunk;
MethodParameters:
Name Flags
userHeapVisitor
thunk
public void prologue(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.usedSize:J
1: aload 0
lconst_0
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.visitedSize:J
2: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.userHeapVisitor:Lsun/jvm/hotspot/oops/HeapVisitor;
lload 1
invokeinterface sun.jvm.hotspot.oops.HeapVisitor.prologue:(J)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/utilities/ProgressiveHeapVisitor;
0 4 1 usedSize J
MethodParameters:
Name Flags
usedSize
public boolean doObj(sun.jvm.hotspot.oops.Oop);
descriptor: (Lsun/jvm/hotspot/oops/Oop;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.userHeapVisitor:Lsun/jvm/hotspot/oops/HeapVisitor;
aload 1
invokeinterface sun.jvm.hotspot.oops.HeapVisitor.doObj:(Lsun/jvm/hotspot/oops/Oop;)Z
pop
1: aload 0
dup
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.visitedSize:J
aload 1
invokevirtual sun.jvm.hotspot.oops.Oop.getObjectSize:()J
ladd
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.visitedSize:J
2: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.visitedSize:J
l2d
aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.usedSize:J
l2d
ddiv
dstore 2
start local 2 3: dload 2
aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.lastNotificationFraction:D
getstatic sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.MINIMUM_NOTIFICATION_FRACTION:D
dadd
dcmpl
ifle 6
4: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.thunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
dload 2
invokeinterface sun.jvm.hotspot.utilities.HeapProgressThunk.heapIterationFractionUpdate:(D)V
5: aload 0
dload 2
putfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.lastNotificationFraction:D
6: StackMap locals: double
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/utilities/ProgressiveHeapVisitor;
0 7 1 obj Lsun/jvm/hotspot/oops/Oop;
3 7 2 curFrac D
MethodParameters:
Name Flags
obj
public void epilogue();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.userHeapVisitor:Lsun/jvm/hotspot/oops/HeapVisitor;
invokeinterface sun.jvm.hotspot.oops.HeapVisitor.epilogue:()V
1: aload 0
getfield sun.jvm.hotspot.utilities.ProgressiveHeapVisitor.thunk:Lsun/jvm/hotspot/utilities/HeapProgressThunk;
invokeinterface sun.jvm.hotspot.utilities.HeapProgressThunk.heapIterationComplete:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/ProgressiveHeapVisitor;
}
SourceFile: "ProgressiveHeapVisitor.java"