org.mmtk.plan.concurrent
Class ConcurrentConstraints

java.lang.Object
  extended by org.mmtk.plan.PlanConstraints
      extended by org.mmtk.plan.SimpleConstraints
          extended by org.mmtk.plan.concurrent.ConcurrentConstraints
Direct Known Subclasses:
CMSConstraints

public abstract class ConcurrentConstraints
extends SimpleConstraints

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.


Constructor Summary
ConcurrentConstraints()
           
 
Method Summary
 boolean needsConcurrentWorkers()
           
 boolean needsJavaLangReferenceReadBarrier()
           
 boolean needsObjectReferenceWriteBarrier()
           
 
Methods inherited from class org.mmtk.plan.PlanConstraints
addressBulkCopySupported, booleanBulkCopySupported, byteBulkCopySupported, charBulkCopySupported, doubleBulkCopySupported, extentBulkCopySupported, floatBulkCopySupported, gcHeaderBits, gcHeaderWords, generateGCTrace, generational, intBulkCopySupported, longBulkCopySupported, maxNonLOSCopyBytes, maxNonLOSDefaultAllocBytes, maxNonLOSNonMovingAllocBytes, movesObjects, needsAddressReadBarrier, needsAddressWriteBarrier, needsBooleanReadBarrier, needsBooleanWriteBarrier, needsByteReadBarrier, needsByteWriteBarrier, needsCharReadBarrier, needsCharWriteBarrier, needsDoubleReadBarrier, needsDoubleWriteBarrier, needsExtentReadBarrier, needsExtentWriteBarrier, needsFloatReadBarrier, needsFloatWriteBarrier, needsForwardAfterLiveness, needsIntReadBarrier, needsIntWriteBarrier, needsLinearScan, needsLogBitInHeader, needsLongReadBarrier, needsLongWriteBarrier, needsObjectReferenceNonHeapReadBarrier, needsObjectReferenceNonHeapWriteBarrier, needsObjectReferenceReadBarrier, needsOffsetReadBarrier, needsOffsetWriteBarrier, needsShortReadBarrier, needsShortWriteBarrier, needsWordReadBarrier, needsWordWriteBarrier, numSpecializedScans, objectReferenceBulkCopySupported, offsetBulkCopySupported, shortBulkCopySupported, withGCspy, wordBulkCopySupported
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConcurrentConstraints

public ConcurrentConstraints()
Method Detail

needsConcurrentWorkers

public boolean needsConcurrentWorkers()
Overrides:
needsConcurrentWorkers in class PlanConstraints
Returns:
true if this plan requires concurrent worker threads

needsObjectReferenceWriteBarrier

public boolean needsObjectReferenceWriteBarrier()
Overrides:
needsObjectReferenceWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on object references.

needsJavaLangReferenceReadBarrier

public boolean needsJavaLangReferenceReadBarrier()
Overrides:
needsJavaLangReferenceReadBarrier in class PlanConstraints
Returns:
true if this Plan requires read barriers on java.lang.reference types.