public abstract class sun.jvm.hotspot.gc.shared.Generation extends sun.jvm.hotspot.runtime.VMObject
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.jvm.hotspot.gc.shared.Generation
super_class: sun.jvm.hotspot.runtime.VMObject
{
private static long reservedFieldOffset;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static long virtualSpaceFieldOffset;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
protected static final int K;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 1024
private static sun.jvm.hotspot.types.Field statRecordField;
descriptor: Lsun/jvm/hotspot/types/Field;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static sun.jvm.hotspot.types.CIntegerField invocationField;
descriptor: Lsun/jvm/hotspot/types/CIntegerField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int NAME_DEF_NEW;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int NAME_PAR_NEW;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int NAME_MARK_SWEEP_COMPACT;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int NAME_CONCURRENT_MARK_SWEEP;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int NAME_OTHER;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.jvm.hotspot.gc.shared.Generation$1
dup
invokespecial sun.jvm.hotspot.gc.shared.Generation$1.<init>:()V
invokestatic sun.jvm.hotspot.runtime.VM.registerVMInitializedObserver:(Ljava/util/Observer;)V
1: return
LocalVariableTable:
Start End Slot Name Signature
private static synchronized void initialize(sun.jvm.hotspot.types.TypeDataBase);
descriptor: (Lsun/jvm/hotspot/types/TypeDataBase;)V
flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
ldc "Generation"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupType:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Type;
astore 1
start local 1 1: aload 1
ldc "_reserved"
invokeinterface sun.jvm.hotspot.types.Type.getField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Field;
invokeinterface sun.jvm.hotspot.types.Field.getOffset:()J
putstatic sun.jvm.hotspot.gc.shared.Generation.reservedFieldOffset:J
2: aload 1
ldc "_virtual_space"
invokeinterface sun.jvm.hotspot.types.Type.getField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Field;
invokeinterface sun.jvm.hotspot.types.Field.getOffset:()J
putstatic sun.jvm.hotspot.gc.shared.Generation.virtualSpaceFieldOffset:J
3: aload 1
ldc "_stat_record"
invokeinterface sun.jvm.hotspot.types.Type.getField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Field;
putstatic sun.jvm.hotspot.gc.shared.Generation.statRecordField:Lsun/jvm/hotspot/types/Field;
4: aload 0
ldc "Generation::StatRecord"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupType:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Type;
astore 1
5: aload 1
ldc "invocations"
invokeinterface sun.jvm.hotspot.types.Type.getCIntegerField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/CIntegerField;
putstatic sun.jvm.hotspot.gc.shared.Generation.invocationField:Lsun/jvm/hotspot/types/CIntegerField;
6: aload 0
ldc "Generation::DefNew"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupIntConstant:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
putstatic sun.jvm.hotspot.gc.shared.Generation.NAME_DEF_NEW:I
7: aload 0
ldc "Generation::ParNew"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupIntConstant:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
putstatic sun.jvm.hotspot.gc.shared.Generation.NAME_PAR_NEW:I
8: aload 0
ldc "Generation::MarkSweepCompact"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupIntConstant:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
putstatic sun.jvm.hotspot.gc.shared.Generation.NAME_MARK_SWEEP_COMPACT:I
9: aload 0
ldc "Generation::ConcurrentMarkSweep"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupIntConstant:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
putstatic sun.jvm.hotspot.gc.shared.Generation.NAME_CONCURRENT_MARK_SWEEP:I
10: aload 0
ldc "Generation::Other"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupIntConstant:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
putstatic sun.jvm.hotspot.gc.shared.Generation.NAME_OTHER:I
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 db Lsun/jvm/hotspot/types/TypeDataBase;
1 12 1 type Lsun/jvm/hotspot/types/Type;
MethodParameters:
Name Flags
db
public void <init>(sun.jvm.hotspot.debugger.Address);
descriptor: (Lsun/jvm/hotspot/debugger/Address;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.jvm.hotspot.runtime.VMObject.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/gc/shared/Generation;
0 2 1 addr Lsun/jvm/hotspot/debugger/Address;
MethodParameters:
Name Flags
addr
public sun.jvm.hotspot.gc.shared.Generation$Name kind();
descriptor: ()Lsun/jvm/hotspot/gc/shared/Generation$Name;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.OTHER:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
static sun.jvm.hotspot.gc.shared.Generation$Name nameForEnum(int);
descriptor: (I)Lsun/jvm/hotspot/gc/shared/Generation$Name;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
getstatic sun.jvm.hotspot.gc.shared.Generation.NAME_DEF_NEW:I
if_icmpne 2
1: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.DEF_NEW:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
2: StackMap locals:
StackMap stack:
iload 0
getstatic sun.jvm.hotspot.gc.shared.Generation.NAME_PAR_NEW:I
if_icmpne 4
3: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.PAR_NEW:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
4: StackMap locals:
StackMap stack:
iload 0
getstatic sun.jvm.hotspot.gc.shared.Generation.NAME_MARK_SWEEP_COMPACT:I
if_icmpne 6
5: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.MARK_SWEEP_COMPACT:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
6: StackMap locals:
StackMap stack:
iload 0
getstatic sun.jvm.hotspot.gc.shared.Generation.NAME_CONCURRENT_MARK_SWEEP:I
if_icmpne 8
7: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.CONCURRENT_MARK_SWEEP:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
8: StackMap locals:
StackMap stack:
iload 0
getstatic sun.jvm.hotspot.gc.shared.Generation.NAME_OTHER:I
if_icmpne 10
9: getstatic sun.jvm.hotspot.gc.shared.Generation$Name.OTHER:Lsun/jvm/hotspot/gc/shared/Generation$Name;
areturn
10: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "should not reach here"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 value I
MethodParameters:
Name Flags
value
public int invocations();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.gc.shared.Generation.getStatRecord:()Lsun/jvm/hotspot/gc/shared/Generation$StatRecord;
invokevirtual sun.jvm.hotspot.gc.shared.Generation$StatRecord.getInvocations:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
public abstract long capacity();
descriptor: ()J
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract long used();
descriptor: ()J
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract long free();
descriptor: ()J
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract long contiguousAvailable();
descriptor: ()J
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public sun.jvm.hotspot.memory.MemRegion reserved();
descriptor: ()Lsun/jvm/hotspot/memory/MemRegion;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new sun.jvm.hotspot.memory.MemRegion
dup
aload 0
getfield sun.jvm.hotspot.gc.shared.Generation.addr:Lsun/jvm/hotspot/debugger/Address;
getstatic sun.jvm.hotspot.gc.shared.Generation.reservedFieldOffset:J
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
invokespecial sun.jvm.hotspot.memory.MemRegion.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
public sun.jvm.hotspot.memory.MemRegion usedRegion();
descriptor: ()Lsun/jvm/hotspot/memory/MemRegion;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.gc.shared.Generation.reserved:()Lsun/jvm/hotspot/memory/MemRegion;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
public boolean isIn(sun.jvm.hotspot.debugger.Address);
descriptor: (Lsun/jvm/hotspot/debugger/Address;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new sun.jvm.hotspot.gc.shared.GenerationIsInClosure
dup
aload 1
invokespecial sun.jvm.hotspot.gc.shared.GenerationIsInClosure.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
astore 2
start local 2 1: aload 0
aload 2
invokevirtual sun.jvm.hotspot.gc.shared.Generation.spaceIterate:(Lsun/jvm/hotspot/gc/shared/SpaceClosure;)V
2: aload 2
invokevirtual sun.jvm.hotspot.gc.shared.GenerationIsInClosure.space:()Lsun/jvm/hotspot/gc/shared/Space;
ifnull 3
iconst_1
ireturn
StackMap locals: sun.jvm.hotspot.gc.shared.GenerationIsInClosure
StackMap stack:
3: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/gc/shared/Generation;
0 4 1 p Lsun/jvm/hotspot/debugger/Address;
1 4 2 blk Lsun/jvm/hotspot/gc/shared/GenerationIsInClosure;
MethodParameters:
Name Flags
p
public boolean isInReserved(sun.jvm.hotspot.debugger.Address);
descriptor: (Lsun/jvm/hotspot/debugger/Address;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.jvm.hotspot.gc.shared.Generation.reserved:()Lsun/jvm/hotspot/memory/MemRegion;
aload 1
invokevirtual sun.jvm.hotspot.memory.MemRegion.contains:(Lsun/jvm/hotspot/debugger/Address;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
0 1 1 p Lsun/jvm/hotspot/debugger/Address;
MethodParameters:
Name Flags
p
protected sun.jvm.hotspot.memory.VirtualSpace virtualSpace();
descriptor: ()Lsun/jvm/hotspot/memory/VirtualSpace;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc Lsun/jvm/hotspot/memory/VirtualSpace;
aload 0
getfield sun.jvm.hotspot.gc.shared.Generation.addr:Lsun/jvm/hotspot/debugger/Address;
getstatic sun.jvm.hotspot.gc.shared.Generation.virtualSpaceFieldOffset:J
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
invokestatic sun.jvm.hotspot.runtime.VMObjectFactory.newObject:(Ljava/lang/Class;Lsun/jvm/hotspot/debugger/Address;)Ljava/lang/Object;
checkcast sun.jvm.hotspot.memory.VirtualSpace
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
public abstract java.lang.String name();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public void spaceIterate(sun.jvm.hotspot.gc.shared.SpaceClosure);
descriptor: (Lsun/jvm/hotspot/gc/shared/SpaceClosure;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual sun.jvm.hotspot.gc.shared.Generation.spaceIterate:(Lsun/jvm/hotspot/gc/shared/SpaceClosure;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/gc/shared/Generation;
0 2 1 blk Lsun/jvm/hotspot/gc/shared/SpaceClosure;
MethodParameters:
Name Flags
blk
public abstract void spaceIterate(sun.jvm.hotspot.gc.shared.SpaceClosure, boolean);
descriptor: (Lsun/jvm/hotspot/gc/shared/SpaceClosure;Z)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
blk
usedOnly
public void print();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual sun.jvm.hotspot.gc.shared.Generation.printOn:(Ljava/io/PrintStream;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
public abstract void printOn(java.io.PrintStream);
descriptor: (Ljava/io/PrintStream;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
tty
private sun.jvm.hotspot.gc.shared.Generation$StatRecord getStatRecord();
descriptor: ()Lsun/jvm/hotspot/gc/shared/Generation$StatRecord;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc Lsun/jvm/hotspot/gc/shared/Generation$StatRecord;
aload 0
getfield sun.jvm.hotspot.gc.shared.Generation.addr:Lsun/jvm/hotspot/debugger/Address;
getstatic sun.jvm.hotspot.gc.shared.Generation.statRecordField:Lsun/jvm/hotspot/types/Field;
invokeinterface sun.jvm.hotspot.types.Field.getOffset:()J
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
invokestatic sun.jvm.hotspot.runtime.VMObjectFactory.newObject:(Ljava/lang/Class;Lsun/jvm/hotspot/debugger/Address;)Ljava/lang/Object;
checkcast sun.jvm.hotspot.gc.shared.Generation$StatRecord
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/gc/shared/Generation;
}
SourceFile: "Generation.java"
NestMembers:
sun.jvm.hotspot.gc.shared.Generation$1 sun.jvm.hotspot.gc.shared.Generation$Name sun.jvm.hotspot.gc.shared.Generation$StatRecord
InnerClasses:
sun.jvm.hotspot.gc.shared.Generation$1
public Name = sun.jvm.hotspot.gc.shared.Generation$Name of sun.jvm.hotspot.gc.shared.Generation
public StatRecord = sun.jvm.hotspot.gc.shared.Generation$StatRecord of sun.jvm.hotspot.gc.shared.Generation