org.mmtk.plan.semispace.usePrimitiveWriteBarriers
Class UsePrimitiveWriteBarriersConstraints

java.lang.Object
  extended by org.mmtk.plan.PlanConstraints
      extended by org.mmtk.plan.SimpleConstraints
          extended by org.mmtk.plan.StopTheWorldConstraints
              extended by org.mmtk.plan.semispace.SSConstraints
                  extended by org.mmtk.plan.semispace.usePrimitiveWriteBarriers.UsePrimitiveWriteBarriersConstraints

public class UsePrimitiveWriteBarriersConstraints
extends SSConstraints

UsePrimitiveWriteBarriers common constants.


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

Constructor Detail

UsePrimitiveWriteBarriersConstraints

public UsePrimitiveWriteBarriersConstraints()
Method Detail

needsBooleanWriteBarrier

public boolean needsBooleanWriteBarrier()
Overrides:
needsBooleanWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on booleans.

booleanBulkCopySupported

public boolean booleanBulkCopySupported()
Overrides:
booleanBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk boolean arraycopy barriers.

needsByteWriteBarrier

public boolean needsByteWriteBarrier()
Overrides:
needsByteWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on bytes.

byteBulkCopySupported

public boolean byteBulkCopySupported()
Overrides:
byteBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk byte arraycopy barriers.

needsCharWriteBarrier

public boolean needsCharWriteBarrier()
Overrides:
needsCharWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on chars.

charBulkCopySupported

public boolean charBulkCopySupported()
Overrides:
charBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk char arraycopy barriers.

needsShortWriteBarrier

public boolean needsShortWriteBarrier()
Overrides:
needsShortWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on shorts.

shortBulkCopySupported

public boolean shortBulkCopySupported()
Overrides:
shortBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk short arraycopy barriers.

needsIntWriteBarrier

public boolean needsIntWriteBarrier()
Overrides:
needsIntWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on ints.

intBulkCopySupported

public boolean intBulkCopySupported()
Overrides:
intBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk int arraycopy barriers.

needsLongWriteBarrier

public boolean needsLongWriteBarrier()
Overrides:
needsLongWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on longs.

longBulkCopySupported

public boolean longBulkCopySupported()
Overrides:
longBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk long arraycopy barriers.

needsFloatWriteBarrier

public boolean needsFloatWriteBarrier()
Overrides:
needsFloatWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on floats.

floatBulkCopySupported

public boolean floatBulkCopySupported()
Overrides:
floatBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk float arraycopy barriers.

needsDoubleWriteBarrier

public boolean needsDoubleWriteBarrier()
Overrides:
needsDoubleWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on doubles.

doubleBulkCopySupported

public boolean doubleBulkCopySupported()
Overrides:
doubleBulkCopySupported in class PlanConstraints
Returns:
true if this Plan can perform bulk double arraycopy barriers.

needsWordWriteBarrier

public boolean needsWordWriteBarrier()
Overrides:
needsWordWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on Words.

needsAddressWriteBarrier

public boolean needsAddressWriteBarrier()
Overrides:
needsAddressWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on Address's.

needsExtentWriteBarrier

public boolean needsExtentWriteBarrier()
Overrides:
needsExtentWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on Extents.

needsOffsetWriteBarrier

public boolean needsOffsetWriteBarrier()
Overrides:
needsOffsetWriteBarrier in class PlanConstraints
Returns:
true if this Plan requires write barriers on Offsets.