java.lang.Object
com.ibm.j9ddr.vm29.j9.gc.GCHeapRegionManager
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
< address ordered doubly linked list for auxiliary heap regionsprotected com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer
protected VoidPointer
< the first (lowest address) byte of heap which is addressable by the tableprotected VoidPointer
< number of heap regions on the fixed-sized table (_regionTable)protected UDATA
< the size, in bytes, of a region in the _regionTableprotected UDATA
< number of heap regions on the auxiliary listprotected GCHeapRegionDescriptor[]
< the shift value to use against pointers to determine the corresponding region indexprotected UDATA
< the first byte AFTER the heap range which is addressable by the tableprotected int
< the raw array of fixed-sized regions for representing a flat heapprotected UDATA
< The size, in bytes, of the HeapRegionDescriptor subclass used by this managerprotected static GCHeapRegionManager
-
Constructor Summary
ModifierConstructorDescriptionprotected
GCHeapRegionManager
(com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer hrm) < The size, in bytes, of all currently active regions on the heap (that is, both table descriptors attached to subspaces and aux descriptors in the list) -
Method Summary
Modifier and TypeMethodDescriptionauxiliaryDescriptorForAddress
(AbstractPointer heapAddress) static GCHeapRegionManager
fromHeapRegionManager
(com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer hrm) int
protected void
protected void
physicalTableDescriptorForIndex
(int regionIndex) protected int
physicalTableDescriptorIndexForAddress
(AbstractPointer heapAddress) regionDescriptorForAddress
(AbstractPointer heapAddress) tableDescriptorForAddress
(AbstractPointer heapAddress) tableDescriptorForIndex
(int regionIndex)
-
Field Details
-
singleton
-
_heapRegionManager
protected com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer _heapRegionManager -
_auxRegionCount
protected int _auxRegionCount< address ordered doubly linked list for auxiliary heap regions -
_regionSize
< number of heap regions on the auxiliary list -
_regionShift
< the size, in bytes, of a region in the _regionTable -
_regionTable
< the shift value to use against pointers to determine the corresponding region index -
_tableRegionCount
protected int _tableRegionCount< the raw array of fixed-sized regions for representing a flat heap -
_lowTableEdge
< number of heap regions on the fixed-sized table (_regionTable) -
_highTableEdge
< the first (lowest address) byte of heap which is addressable by the table -
_tableDescriptorSize
< the first byte AFTER the heap range which is addressable by the table -
_totalHeapSize
< The size, in bytes, of the HeapRegionDescriptor subclass used by this manager
-
-
Constructor Details
-
GCHeapRegionManager
protected GCHeapRegionManager(com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer hrm) throws CorruptDataException < The size, in bytes, of all currently active regions on the heap (that is, both table descriptors attached to subspaces and aux descriptors in the list)- Throws:
CorruptDataException
-
-
Method Details
-
fromHeapRegionManager
public static GCHeapRegionManager fromHeapRegionManager(com.ibm.j9ddr.vm29.pointer.generated.MM_HeapRegionManagerPointer hrm) throws CorruptDataException - Throws:
CorruptDataException
-
initializeAuxRegionDescriptors
- Throws:
CorruptDataException
-
initializeTableRegionDescriptors
- Throws:
CorruptDataException
-
getTotalHeapSize
-
getRegionSize
-
getTableRegionCount
public int getTableRegionCount() -
getHeapSize
-
getAuxiliaryRegions
- Throws:
CorruptDataException
-
getTableRegions
- Throws:
CorruptDataException
-
regionDescriptorForAddress
-
auxiliaryDescriptorForAddress
-
tableDescriptorForIndex
-
physicalTableDescriptorForIndex
-
physicalTableDescriptorIndexForAddress
-
tableDescriptorForAddress
-