org.mmtk.plan.markcompact
Class MCConstraints
java.lang.Object
org.mmtk.plan.PlanConstraints
org.mmtk.plan.SimpleConstraints
org.mmtk.plan.StopTheWorldConstraints
org.mmtk.plan.markcompact.MCConstraints
public class MCConstraints
- extends StopTheWorldConstraints
This class and its subclasses communicate to the host VM/Runtime
any features of the selected plan that it needs to know. This is
separate from the main Plan/PlanLocal class in order to bypass any
issues with ordering of static initialization.
Methods inherited from class org.mmtk.plan.PlanConstraints |
addressBulkCopySupported, booleanBulkCopySupported, byteBulkCopySupported, charBulkCopySupported, doubleBulkCopySupported, extentBulkCopySupported, floatBulkCopySupported, generateGCTrace, generational, intBulkCopySupported, longBulkCopySupported, maxNonLOSCopyBytes, maxNonLOSNonMovingAllocBytes, needsAddressReadBarrier, needsAddressWriteBarrier, needsBooleanReadBarrier, needsBooleanWriteBarrier, needsByteReadBarrier, needsByteWriteBarrier, needsCharReadBarrier, needsCharWriteBarrier, needsConcurrentWorkers, needsDoubleReadBarrier, needsDoubleWriteBarrier, needsExtentReadBarrier, needsExtentWriteBarrier, needsFloatReadBarrier, needsFloatWriteBarrier, needsIntReadBarrier, needsIntWriteBarrier, needsJavaLangReferenceReadBarrier, needsLogBitInHeader, needsLongReadBarrier, needsLongWriteBarrier, needsObjectReferenceNonHeapReadBarrier, needsObjectReferenceNonHeapWriteBarrier, needsObjectReferenceReadBarrier, needsObjectReferenceWriteBarrier, needsOffsetReadBarrier, needsOffsetWriteBarrier, needsShortReadBarrier, needsShortWriteBarrier, needsWordReadBarrier, needsWordWriteBarrier, objectReferenceBulkCopySupported, offsetBulkCopySupported, shortBulkCopySupported, withGCspy, wordBulkCopySupported |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MCConstraints
public MCConstraints()
movesObjects
public boolean movesObjects()
- Overrides:
movesObjects
in class PlanConstraints
- Returns:
true
if this Plan moves objects.
needsForwardAfterLiveness
public boolean needsForwardAfterLiveness()
- Overrides:
needsForwardAfterLiveness
in class PlanConstraints
- Returns:
true
if this object forwards objects after
determining global object liveness (e.g. many compacting collectors).
needsLinearScan
public boolean needsLinearScan()
- Overrides:
needsLinearScan
in class PlanConstraints
- Returns:
true
if this Plan requires linear scanning.
maxNonLOSDefaultAllocBytes
public int maxNonLOSDefaultAllocBytes()
- Overrides:
maxNonLOSDefaultAllocBytes
in class PlanConstraints
- Returns:
- Size (in bytes) beyond which new regular objects must be allocated to the LOS
gcHeaderBits
public int gcHeaderBits()
- Specified by:
gcHeaderBits
in class PlanConstraints
- Returns:
- The number of header bits that are required.
gcHeaderWords
public int gcHeaderWords()
- Specified by:
gcHeaderWords
in class PlanConstraints
- Returns:
- The number of header words that are required.
numSpecializedScans
public int numSpecializedScans()
- Overrides:
numSpecializedScans
in class PlanConstraints
- Returns:
- The specialized scan methods required