public final class NoRememberedSet extends Object implements RememberedSet
| Constructor and Description |
|---|
NoRememberedSet() |
| Modifier and Type | Method and Description |
|---|---|
void |
clearRememberedSet(AlignedHeapChunk.AlignedHeader chunk)
Clears the remembered set of an aligned chunk.
|
void |
clearRememberedSet(UnalignedHeapChunk.UnalignedHeader chunk)
Clears the remembered set of an unaligned chunk.
|
org.graalvm.compiler.nodes.gc.BarrierSet |
createBarrierSet(jdk.vm.ci.meta.MetaAccessProvider metaAccess)
Creates the barrier set that the compiler should use for emitting read/write barriers.
|
void |
dirtyCardForAlignedObject(Object object,
boolean verifyOnly)
Marks an object as dirty.
|
void |
dirtyCardForUnalignedObject(Object object,
boolean verifyOnly)
Marks an object as dirty.
|
void |
dirtyCardIfNecessary(Object holderObject,
Object object)
Marks the
holderObject as dirty if needed according to the location of
object. |
void |
enableRememberedSetForAlignedChunk(HostedByteBufferPointer chunk,
int chunkPosition,
List<ImageHeapObject> objects)
Enables remembered set tracking for an aligned chunk and its objects.
|
void |
enableRememberedSetForChunk(AlignedHeapChunk.AlignedHeader chunk)
Enables remembered set tracking for an aligned chunk and its objects.
|
void |
enableRememberedSetForChunk(UnalignedHeapChunk.UnalignedHeader chunk)
Enables remembered set tracking for an unaligned chunk and its objects.
|
void |
enableRememberedSetForObject(AlignedHeapChunk.AlignedHeader chunk,
Object obj)
Enables remembered set tracking for a single object in an aligned chunk.
|
void |
enableRememberedSetForUnalignedChunk(HostedByteBufferPointer chunk)
Enables remembered set tracking for an unaligned chunk and its objects.
|
org.graalvm.word.UnsignedWord |
getHeaderSizeOfAlignedChunk()
Returns the header size of aligned chunks.
|
org.graalvm.word.UnsignedWord |
getHeaderSizeOfUnalignedChunk()
Returns the header size of unaligned chunks.
|
boolean |
hasRememberedSet(org.graalvm.word.UnsignedWord header)
Checks if remembered set tracking is enabled for an object.
|
boolean |
verify(AlignedHeapChunk.AlignedHeader firstAlignedHeapChunk)
Verify the remembered set for an aligned chunk.
|
boolean |
verify(UnalignedHeapChunk.UnalignedHeader firstUnalignedHeapChunk)
Verify the remembered set for an unaligned chunk.
|
void |
walkDirtyObjects(AlignedHeapChunk.AlignedHeader chunk,
GreyToBlackObjectVisitor visitor,
boolean clean)
Walks all dirty objects in an aligned chunk.
|
void |
walkDirtyObjects(Space space,
GreyToBlackObjectVisitor visitor,
boolean clean)
Walks all dirty objects in a
Space. |
void |
walkDirtyObjects(UnalignedHeapChunk.UnalignedHeader chunk,
GreyToBlackObjectVisitor visitor,
boolean clean)
Walks all dirty objects in an unaligned chunk.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetpublic org.graalvm.compiler.nodes.gc.BarrierSet createBarrierSet(jdk.vm.ci.meta.MetaAccessProvider metaAccess)
RememberedSetcreateBarrierSet in interface RememberedSetpublic org.graalvm.word.UnsignedWord getHeaderSizeOfAlignedChunk()
RememberedSetgetHeaderSizeOfAlignedChunk in interface RememberedSetpublic org.graalvm.word.UnsignedWord getHeaderSizeOfUnalignedChunk()
RememberedSetgetHeaderSizeOfUnalignedChunk in interface RememberedSetpublic void enableRememberedSetForAlignedChunk(HostedByteBufferPointer chunk, int chunkPosition, List<ImageHeapObject> objects)
RememberedSetenableRememberedSetForAlignedChunk in interface RememberedSetpublic void enableRememberedSetForUnalignedChunk(HostedByteBufferPointer chunk)
RememberedSetenableRememberedSetForUnalignedChunk in interface RememberedSetpublic void enableRememberedSetForChunk(AlignedHeapChunk.AlignedHeader chunk)
RememberedSetenableRememberedSetForChunk in interface RememberedSetpublic void enableRememberedSetForChunk(UnalignedHeapChunk.UnalignedHeader chunk)
RememberedSetenableRememberedSetForChunk in interface RememberedSetpublic void enableRememberedSetForObject(AlignedHeapChunk.AlignedHeader chunk, Object obj)
RememberedSetenableRememberedSetForObject in interface RememberedSetpublic void clearRememberedSet(AlignedHeapChunk.AlignedHeader chunk)
RememberedSetclearRememberedSet in interface RememberedSetpublic void clearRememberedSet(UnalignedHeapChunk.UnalignedHeader chunk)
RememberedSetclearRememberedSet in interface RememberedSetpublic boolean hasRememberedSet(org.graalvm.word.UnsignedWord header)
RememberedSethasRememberedSet in interface RememberedSetpublic void dirtyCardForAlignedObject(Object object, boolean verifyOnly)
RememberedSetdirtyCardForAlignedObject in interface RememberedSetpublic void dirtyCardForUnalignedObject(Object object, boolean verifyOnly)
RememberedSetdirtyCardForUnalignedObject in interface RememberedSetpublic void dirtyCardIfNecessary(Object holderObject, Object object)
RememberedSetholderObject as dirty if needed according to the location of
object. May only be called for holderObjects for which remembered set
tracking is enabled.dirtyCardIfNecessary in interface RememberedSetpublic void walkDirtyObjects(AlignedHeapChunk.AlignedHeader chunk, GreyToBlackObjectVisitor visitor, boolean clean)
RememberedSetwalkDirtyObjects in interface RememberedSetpublic void walkDirtyObjects(UnalignedHeapChunk.UnalignedHeader chunk, GreyToBlackObjectVisitor visitor, boolean clean)
RememberedSetwalkDirtyObjects in interface RememberedSetpublic void walkDirtyObjects(Space space, GreyToBlackObjectVisitor visitor, boolean clean)
RememberedSetSpace.walkDirtyObjects in interface RememberedSetpublic boolean verify(AlignedHeapChunk.AlignedHeader firstAlignedHeapChunk)
RememberedSetverify in interface RememberedSetpublic boolean verify(UnalignedHeapChunk.UnalignedHeader firstUnalignedHeapChunk)
RememberedSetverify in interface RememberedSet