class sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector implements sun.jvm.hotspot.gc.shared.LiveRegionsClosure
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector
super_class: java.lang.Object
{
private java.util.List<sun.jvm.hotspot.debugger.Address> liveRegions;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lsun/jvm/hotspot/debugger/Address;>;
void <init>(java.util.List<sun.jvm.hotspot.debugger.Address>);
descriptor: (Ljava/util/List;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector this
start local 1 // java.util.List l
0: .line 269
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 270
aload 0 /* this */
aload 1 /* l */
putfield sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector.liveRegions:Ljava/util/List;
2: .line 271
return
end local 1 // java.util.List l
end local 0 // sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/oops/ObjectHeap$LiveRegionsCollector;
0 3 1 l Ljava/util/List<Lsun/jvm/hotspot/debugger/Address;>;
Signature: (Ljava/util/List<Lsun/jvm/hotspot/debugger/Address;>;)V
MethodParameters:
Name Flags
l
public void doLiveRegions(sun.jvm.hotspot.gc.shared.LiveRegionsProvider);
descriptor: (Lsun/jvm/hotspot/gc/shared/LiveRegionsProvider;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 // sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector this
start local 1 // sun.jvm.hotspot.gc.shared.LiveRegionsProvider lrp
0: .line 275
aload 1 /* lrp */
invokeinterface sun.jvm.hotspot.gc.shared.LiveRegionsProvider.getLiveRegions:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 16
StackMap locals: sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector sun.jvm.hotspot.gc.shared.LiveRegionsProvider top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.jvm.hotspot.memory.MemRegion
astore 2 /* reg */
start local 2 // sun.jvm.hotspot.memory.MemRegion reg
2: .line 276
aload 2 /* reg */
invokevirtual sun.jvm.hotspot.memory.MemRegion.end:()Lsun/jvm/hotspot/debugger/Address;
astore 4 /* top */
start local 4 // sun.jvm.hotspot.debugger.Address top
3: .line 277
aload 2 /* reg */
invokevirtual sun.jvm.hotspot.memory.MemRegion.start:()Lsun/jvm/hotspot/debugger/Address;
astore 5 /* bottom */
start local 5 // sun.jvm.hotspot.debugger.Address bottom
4: .line 278
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 8
5: .line 279
aload 4 /* top */
ifnull 6
iconst_1
goto 7
StackMap locals: sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector sun.jvm.hotspot.gc.shared.LiveRegionsProvider sun.jvm.hotspot.memory.MemRegion java.util.Iterator sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.debugger.Address
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: ldc "top address in a live region should not be null"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
8: .line 281
StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
ifeq 12
9: .line 282
aload 5 /* bottom */
ifnull 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: ldc "bottom address in a live region should not be null"
invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
12: .line 284
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector.liveRegions:Ljava/util/List;
aload 4 /* top */
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: .line 285
aload 0 /* this */
getfield sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector.liveRegions:Ljava/util/List;
aload 5 /* bottom */
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: .line 286
getstatic sun.jvm.hotspot.oops.ObjectHeap.DEBUG:Z
ifeq 16
15: .line 287
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Live region: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* lrp */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5 /* bottom */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4 /* top */
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
end local 5 // sun.jvm.hotspot.debugger.Address bottom
end local 4 // sun.jvm.hotspot.debugger.Address top
end local 2 // sun.jvm.hotspot.memory.MemRegion reg
16: .line 275
StackMap locals: sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector sun.jvm.hotspot.gc.shared.LiveRegionsProvider top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
17: .line 290
return
end local 1 // sun.jvm.hotspot.gc.shared.LiveRegionsProvider lrp
end local 0 // sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/jvm/hotspot/oops/ObjectHeap$LiveRegionsCollector;
0 18 1 lrp Lsun/jvm/hotspot/gc/shared/LiveRegionsProvider;
2 16 2 reg Lsun/jvm/hotspot/memory/MemRegion;
3 16 4 top Lsun/jvm/hotspot/debugger/Address;
4 16 5 bottom Lsun/jvm/hotspot/debugger/Address;
MethodParameters:
Name Flags
lrp
}
SourceFile: "ObjectHeap.java"
NestHost: sun.jvm.hotspot.oops.ObjectHeap
InnerClasses:
private LiveRegionsCollector = sun.jvm.hotspot.oops.ObjectHeap$LiveRegionsCollector of sun.jvm.hotspot.oops.ObjectHeap