|
|||||||||||
PREV NEXT | FRAMES NO FRAMES |
Uses of ObjectReference in org.jikesrvm |
---|
Methods in org.jikesrvm with parameters of type ObjectReference | |
---|---|
static void |
VM.sysWrite(ObjectReference o)
|
static void |
VM.sysWrite(String s,
ObjectReference r)
|
static void |
VM.sysWriteln(ObjectReference o)
|
static void |
VM.sysWriteln(String s,
ObjectReference r)
|
static void |
VM.write(ObjectReference object)
|
static void |
VM.writeHex(ObjectReference value)
|
Uses of ObjectReference in org.jikesrvm.compilers.baseline.ia32 |
---|
Methods in org.jikesrvm.compilers.baseline.ia32 with parameters of type ObjectReference | |
---|---|
private static void |
BaselineMagic.check(ObjectReference value)
Method called to check an object reference is valid |
Uses of ObjectReference in org.jikesrvm.mm.mminterface |
---|
Methods in org.jikesrvm.mm.mminterface with parameters of type ObjectReference | |
---|---|
static Address |
MemoryManager.allocateSpace(CollectorContext context,
int bytes,
int align,
int offset,
int allocator,
ObjectReference from)
Allocate space for GC-time copying of an object |
static void |
DebugUtil.dumpRef(ObjectReference ref)
|
static void |
MemoryManager.dumpRef(ObjectReference ref)
Logs information about a reference to the error output. |
static int |
AlignmentEncoding.getTibCode(ObjectReference object)
Extract the encoded value from an object's TIB pointer |
static boolean |
DebugUtil.mappedVMRef(ObjectReference ref)
|
static boolean |
MemoryManager.mightBeTIB(ObjectReference obj)
Check if object might be a TIB. |
static boolean |
MemoryManager.objectInVM(ObjectReference object)
Checks if a reference refers to an object in an in-use area of memory. |
static boolean |
DebugUtil.validRef(ObjectReference ref)
|
static boolean |
MemoryManager.validRef(ObjectReference ref)
Checks if a reference is valid. |
static boolean |
DebugUtil.validType(ObjectReference typeAddress)
Check if an address appears to point to an instance of RVMType |
Uses of ObjectReference in org.jikesrvm.mm.mmtk |
---|
Methods in org.jikesrvm.mm.mmtk that return ObjectReference | |
---|---|
ObjectReference |
ObjectModel.copy(ObjectReference from,
int allocator)
|
private ObjectReference |
ObjectModel.copyArray(ObjectReference from,
TIB tib,
RVMArray type,
int allocator)
|
private ObjectReference |
ObjectModel.copyScalar(ObjectReference from,
TIB tib,
RVMClass type,
int allocator)
|
ObjectReference |
TraceInterface.getLink(ObjectReference ref)
|
ObjectReference |
ObjectModel.getNextObject(ObjectReference object)
|
ObjectReference |
ObjectModel.getObjectFromStartAddress(Address start)
|
private ObjectReference |
ReferenceProcessor.getReference(int i)
Retrieve from the reference table |
ObjectReference |
ObjectModel.getReferenceWhenCopiedTo(ObjectReference from,
Address to)
|
protected ObjectReference |
ReferenceProcessor.getReferent(ObjectReference object)
Get the referent from a reference. |
ObjectReference |
Barriers.objectReferenceAtomicWrite(ObjectReference objref,
ObjectReference target,
Word offset,
Word unused,
int mode)
Atomically write a reference field of an object or array and return the old value of the reference field. |
ObjectReference |
Barriers.objectReferenceRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of an object reference read barrier. |
ObjectReference |
ReferenceProcessor.processReference(TraceLocal trace,
ObjectReference reference)
Process a reference with the current semantics. |
Methods in org.jikesrvm.mm.mmtk with parameters of type ObjectReference | |
---|---|
private void |
ReferenceProcessor.addCandidate(Reference<?> ref,
ObjectReference referent)
Add a reference to the list of references. |
static void |
ReferenceProcessor.addPhantomCandidate(PhantomReference<?> ref,
ObjectReference referent)
Add a reference to the list of phantom references. |
private void |
ReferenceProcessor.addReference(Reference<?> ref,
ObjectReference referent)
Add a reference at the end of the table |
Address |
Barriers.addressRead(ObjectReference ref,
Word offset,
Word location,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Address. |
boolean |
Barriers.addressTryCompareAndSwap(ObjectReference objref,
Address expected,
Address newValue,
Word offset,
Word unused,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
void |
Barriers.addressWrite(ObjectReference ref,
Address target,
Word offset,
Word location,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Address. |
static void |
ReferenceProcessor.addSoftCandidate(SoftReference<?> ref,
ObjectReference referent)
Add a reference to the list of soft references. |
static void |
ReferenceProcessor.addWeakCandidate(WeakReference<?> ref,
ObjectReference referent)
Add a reference to the list of weak references. |
Offset |
TraceInterface.adjustSlotOffset(boolean isScalar,
ObjectReference src,
Address slot)
|
boolean |
ObjectModel.attemptAvailableBits(ObjectReference object,
Word oldVal,
Word newVal)
|
boolean |
Barriers.booleanRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a boolean read barrier. |
void |
Barriers.booleanWrite(ObjectReference objref,
boolean value,
Word offset,
Word location,
int mode)
Perform the actual write of a boolean write barrier. |
byte |
Barriers.byteRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a byte read barrier. |
void |
Barriers.byteWrite(ObjectReference objref,
byte value,
Word offset,
Word location,
int mode)
Perform the actual write of a byte write barrier. |
char |
Barriers.charRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a char read barrier. |
void |
Barriers.charWrite(ObjectReference objref,
char value,
Word offset,
Word location,
int mode)
Perform the actual write of a char write barrier. |
protected void |
ReferenceProcessor.clearReferent(ObjectReference newReference)
Weak and soft references always clear the referent before enqueueing. |
ObjectReference |
ObjectModel.copy(ObjectReference from,
int allocator)
|
private ObjectReference |
ObjectModel.copyArray(ObjectReference from,
TIB tib,
RVMArray type,
int allocator)
|
private ObjectReference |
ObjectModel.copyScalar(ObjectReference from,
TIB tib,
RVMClass type,
int allocator)
|
Address |
ObjectModel.copyTo(ObjectReference from,
ObjectReference to,
Address region)
|
double |
Barriers.doubleRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a double read barrier. |
void |
Barriers.doubleWrite(ObjectReference objref,
double value,
Word offset,
Word location,
int mode)
Perform the actual write of a double write barrier. |
void |
ObjectModel.dumpObject(ObjectReference object)
|
boolean |
ReferenceProcessor.enqueueReference(ObjectReference addr)
Put this Reference object on its ReferenceQueue (if it has one) when its referent is no longer sufficiently reachable. |
Extent |
Barriers.extentRead(ObjectReference ref,
Word offset,
Word location,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Extent. |
void |
Barriers.extentWrite(ObjectReference ref,
Extent target,
Word offset,
Word location,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Extent. |
float |
Barriers.floatRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a float read barrier. |
void |
Barriers.floatWrite(ObjectReference objref,
float value,
Word offset,
Word location,
int mode)
Perform the actual write of a float write barrier. |
int |
ObjectModel.getAlignOffsetWhenCopied(ObjectReference object)
|
int |
ObjectModel.getAlignWhenCopied(ObjectReference object)
|
int |
ObjectModel.getArrayLength(ObjectReference object)
|
int |
ObjectModel.getCurrentSize(ObjectReference object)
|
Word |
TraceInterface.getDeathTime(ObjectReference ref)
|
ObjectReference |
TraceInterface.getLink(ObjectReference ref)
|
ObjectReference |
ObjectModel.getNextObject(ObjectReference object)
|
Address |
ObjectModel.getObjectEndAddress(ObjectReference object)
|
(package private) static int |
ObjectModel.getObjectSize(ObjectReference object)
Return the size of a given object, in bytes |
Word |
TraceInterface.getOID(ObjectReference ref)
|
ObjectReference |
ObjectModel.getReferenceWhenCopiedTo(ObjectReference from,
Address to)
|
protected ObjectReference |
ReferenceProcessor.getReferent(ObjectReference object)
Get the referent from a reference. |
int |
ObjectModel.getSizeWhenCopied(ObjectReference object)
|
byte[] |
ObjectModel.getTypeDescriptor(ObjectReference ref)
|
int |
Barriers.intRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a int read barrier. |
boolean |
Barriers.intTryCompareAndSwap(ObjectReference objref,
int expected,
int newValue,
Word offset,
Word unused,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
void |
Barriers.intWrite(ObjectReference objref,
int value,
Word offset,
Word location,
int mode)
Perform the actual write of a int write barrier. |
boolean |
ObjectModel.isAcyclic(ObjectReference typeRef)
|
boolean |
ObjectModel.isArray(ObjectReference object)
|
boolean |
ObjectModel.isPrimitiveArray(ObjectReference object)
|
long |
Barriers.longRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a long read barrier. |
boolean |
Barriers.longTryCompareAndSwap(ObjectReference objref,
long expected,
long newValue,
Word offset,
Word unused,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
void |
Barriers.longWrite(ObjectReference objref,
long value,
Word offset,
Word location,
int mode)
Perform the actual write of a long write barrier. |
ObjectReference |
Barriers.objectReferenceAtomicWrite(ObjectReference objref,
ObjectReference target,
Word offset,
Word unused,
int mode)
Atomically write a reference field of an object or array and return the old value of the reference field. |
void |
Barriers.objectReferenceNonHeapWrite(Address slot,
ObjectReference target,
Word unusedA,
Word unusedB)
Perform the actual write of the non-heap write barrier. |
ObjectReference |
Barriers.objectReferenceRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of an object reference read barrier. |
boolean |
Barriers.objectReferenceTryCompareAndSwap(ObjectReference objref,
ObjectReference old,
ObjectReference target,
Word offset,
Word unused,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
void |
Barriers.objectReferenceWrite(ObjectReference objref,
ObjectReference value,
Word offset,
Word location,
int mode)
Perform the actual write of an object reference write barrier. |
Address |
ObjectModel.objectStartRef(ObjectReference object)
|
Offset |
Barriers.offsetRead(ObjectReference ref,
Word offset,
Word location,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Offset. |
void |
Barriers.offsetWrite(ObjectReference ref,
Offset target,
Word offset,
Word location,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Offset. |
Word |
ObjectModel.prepareAvailableBits(ObjectReference object)
|
private void |
ScanThread.processCodeLocation(ObjectReference code,
Address ipLoc)
Push a code pointer location onto the code locations deque, optionally performing a sanity check first. |
ObjectReference |
ReferenceProcessor.processReference(TraceLocal trace,
ObjectReference reference)
Process a reference with the current semantics. |
private void |
ScanThread.pushFrameIP(ObjectReference code,
int verbosity)
Push the instruction pointer associated with this frame onto the code locations deque. |
Word |
ObjectModel.readAvailableBitsWord(ObjectReference object)
|
byte |
ObjectModel.readAvailableByte(ObjectReference object)
|
Address |
ObjectModel.refToAddress(ObjectReference object)
|
private void |
ScanThread.scanFrameForCode(ObjectReference code)
Scan this frame for internal code pointers. |
void |
Scanning.scanObject(TransitiveClosure trace,
ObjectReference object)
Scanning of a object, processing each pointer field encountered. |
void |
ObjectModel.setAvailableBit(ObjectReference object,
int idx,
boolean flag)
Sets a bit available for memory manager use in an object. |
void |
TraceInterface.setDeathTime(ObjectReference ref,
Word time_)
|
void |
TraceInterface.setLink(ObjectReference ref,
ObjectReference link)
|
private void |
ReferenceProcessor.setReference(int i,
ObjectReference ref)
Update the reference table |
protected void |
ReferenceProcessor.setReferent(ObjectReference ref,
ObjectReference referent)
Set the referent in a reference. |
short |
Barriers.shortRead(ObjectReference objref,
Word offset,
Word location,
int mode)
Perform the actual read of a short read barrier. |
void |
Barriers.shortWrite(ObjectReference objref,
short value,
Word offset,
Word location,
int mode)
Perform the actual write of a short write barrier. |
Address |
TraceInterface.skipOwnFramesAndDump(ObjectReference typeRef)
|
void |
Scanning.specializedScanObject(int id,
TransitiveClosure trace,
ObjectReference object)
|
boolean |
ObjectModel.testAvailableBit(ObjectReference object,
int idx)
Tests a bit available for memory manager use in an object. |
void |
TraceInterface.updateDeathTime(ObjectReference obj)
Update an object's death time. |
Word |
Barriers.wordAtomicWrite(ObjectReference ref,
Word target,
Word offset,
Word unused,
int mode)
Atomically write a raw reference field of an object or array and return the old value of the reference field. |
Word |
Barriers.wordRead(ObjectReference ref,
Word offset,
Word location,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Word. |
boolean |
Barriers.wordTryCompareAndSwap(ObjectReference ref,
Word old,
Word target,
Word offset,
Word unused,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
void |
Barriers.wordWrite(ObjectReference ref,
Word target,
Word offset,
Word location,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Word. |
void |
ObjectModel.writeAvailableBitsWord(ObjectReference object,
Word val)
|
void |
ObjectModel.writeAvailableByte(ObjectReference object,
byte val)
|
Uses of ObjectReference in org.jikesrvm.objectmodel |
---|
Methods in org.jikesrvm.objectmodel that return ObjectReference | |
---|---|
static ObjectReference |
ObjectModel.getArrayFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
static ObjectReference |
JavaHeader.getArrayFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
static ObjectReference |
MiscHeader.getLink(Object ref)
|
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj)
Get the next object in the heap under contiguous allocation. |
protected static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
int size)
Get the next object in the heap under contiguous allocation. |
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj,
RVMArray type,
int numElements)
Get the next object after this array under contiguous allocation. |
static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
RVMArray type,
int numElements)
Get the next array in the heap under contiguous allocation. |
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj,
RVMClass type)
Get the next object after this scalar under contiguous allocation. |
static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
RVMClass type)
Get the next scalar in the heap under contiguous allocation. |
static ObjectReference |
ObjectModel.getObjectFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
static ObjectReference |
JavaHeader.getObjectFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
static ObjectReference |
ObjectModel.getScalarFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
static ObjectReference |
JavaHeader.getScalarFromStartAddress(Address start)
Get an object reference from the address the lowest word of the object was allocated. |
Methods in org.jikesrvm.objectmodel with parameters of type ObjectReference | |
---|---|
static void |
ObjectModel.describeObject(ObjectReference addr)
For debugging. |
static void |
ObjectModel.dumpHeader(ObjectReference ptr)
For low level debugging of GC subsystem. |
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj)
Get the next object in the heap under contiguous allocation. |
protected static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
int size)
Get the next object in the heap under contiguous allocation. |
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj,
RVMArray type,
int numElements)
Get the next object after this array under contiguous allocation. |
static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
RVMArray type,
int numElements)
Get the next array in the heap under contiguous allocation. |
static ObjectReference |
ObjectModel.getNextObject(ObjectReference obj,
RVMClass type)
Get the next object after this scalar under contiguous allocation. |
static ObjectReference |
JavaHeader.getNextObject(ObjectReference obj,
RVMClass type)
Get the next scalar in the heap under contiguous allocation. |
static int |
ObjectModel.getOffsetForAlignment(RVMArray t,
ObjectReference obj)
Return the offset relative to physical beginning of object that must be aligned. |
static int |
JavaHeader.getOffsetForAlignment(RVMArray t,
ObjectReference obj)
Return the offset relative to physical beginning of object that must be aligned. |
static int |
ObjectModel.getOffsetForAlignment(RVMClass t,
ObjectReference obj)
Return the offset relative to physical beginning of object that must be aligned. |
static int |
JavaHeader.getOffsetForAlignment(RVMClass t,
ObjectReference obj)
Return the offset relative to physical beginning of object that must be aligned. |
static Address |
ObjectModel.getPointerInMemoryRegion(ObjectReference ref)
Given a reference, return an address which is guaranteed to be inside the memory region allocated to the object. |
static Address |
JavaHeader.getPointerInMemoryRegion(ObjectReference ref)
Given a reference, return an address which is guaranteed to be inside the memory region allocated to the object. |
static TIB |
ObjectModel.getTIB(ObjectReference ptr)
Get the TIB for an object. |
static Address |
ObjectModel.objectStartRef(ObjectReference obj)
Map from the object ref to the lowest address of the storage associated with the object |
static Address |
JavaHeader.objectStartRef(ObjectReference obj)
Map from the object ref to the lowest address of the storage associated with the object |
static void |
MiscHeader.setLink(Object object,
ObjectReference link)
|
static void |
ObjectModel.setTIB(ObjectReference ptr,
TIB tib)
Set the TIB for an object. |
Uses of ObjectReference in org.mmtk.plan |
---|
Methods in org.mmtk.plan that return ObjectReference | |
---|---|
ObjectReference |
TraceLocal.getForwardedFinalizable(ObjectReference object)
If a Finalizable object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReference(ObjectReference object)
If the referenced object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReferenceType(ObjectReference object)
If the Reference Type object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReferent(ObjectReference object)
If the reference object (from a Reference Type) has object has moved, return the new location. |
ObjectReference |
MutatorContext.javaLangReferenceReadBarrier(ObjectReference referent)
Read a reference type. |
ObjectReference |
Plan.loadObjectReference(Address slot)
Load an object reference |
ObjectReference |
MutatorContext.objectReferenceNonHeapRead(Address slot,
Word metaDataA,
Word metaDataB)
Read an object reference. |
ObjectReference |
MutatorContext.objectReferenceRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read an object reference. |
ObjectReference |
TraceLocal.retainForFinalize(ObjectReference object)
An object is unreachable and is about to be added to the finalizable queue. |
ObjectReference |
TraceLocal.retainReferent(ObjectReference object)
Make alive a referent object that is known not to be live (isLive is false). |
ObjectReference |
TraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
TraceLocal.traceObject(ObjectReference object,
boolean root)
This method traces an object with knowledge of the fact that object is a root or not. |
Methods in org.mmtk.plan with parameters of type ObjectReference | |
---|---|
boolean |
MutatorContext.addressBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of Addresse's are about to be copied from object src to object dst (as in an array
copy). |
Address |
MutatorContext.addressRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read an Address. |
boolean |
MutatorContext.addressTryCompareAndSwap(ObjectReference src,
Address slot,
Address old,
Address value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
MutatorContext.addressWrite(ObjectReference src,
Address slot,
Address value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Address. |
Address |
CollectorContext.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
MutatorContext.booleanBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of booleans are about to be copied from object src to object dst (as in an array
copy). |
boolean |
MutatorContext.booleanRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a boolean. |
void |
MutatorContext.booleanWrite(ObjectReference src,
Address slot,
boolean value,
Word metaDataA,
Word metaDataB,
int mode)
Write a boolean. |
boolean |
MutatorContext.byteBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of bytes are about to be copied from object src to object dst (as in an array
copy). |
byte |
MutatorContext.byteRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a byte. |
void |
MutatorContext.byteWrite(ObjectReference src,
Address slot,
byte value,
Word metaDataA,
Word metaDataB,
int mode)
Write a byte. |
boolean |
MutatorContext.charBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of chars are about to be copied from object src to object dst (as in an array
copy). |
char |
MutatorContext.charRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a char. |
void |
MutatorContext.charWrite(ObjectReference src,
Address slot,
char value,
Word metaDataA,
Word metaDataB,
int mode)
Write a char. |
int |
CollectorContext.copyCheckAllocator(ObjectReference from,
int bytes,
int align,
int allocator)
Run-time check of the allocator to use for a given copy allocation. |
boolean |
MutatorContext.doubleBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of doubles are about to be copied from object src to object dst (as in an array
copy). |
double |
MutatorContext.doubleRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a double. |
void |
MutatorContext.doubleWrite(ObjectReference src,
Address slot,
double value,
Word metaDataA,
Word metaDataB,
int mode)
Write a double. |
boolean |
MutatorContext.extentBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of Extents are about to be copied from object src to object dst (as in an array
copy). |
Extent |
MutatorContext.extentRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read an Extent. |
void |
MutatorContext.extentWrite(ObjectReference src,
Address slot,
Extent value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Extent. |
boolean |
MutatorContext.floatBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of floats are about to be copied from object src to object dst (as in an array
copy). |
float |
MutatorContext.floatRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a float. |
void |
MutatorContext.floatWrite(ObjectReference src,
Address slot,
float value,
Word metaDataA,
Word metaDataB,
int mode)
Write a float. |
ObjectReference |
TraceLocal.getForwardedFinalizable(ObjectReference object)
If a Finalizable object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReference(ObjectReference object)
If the referenced object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReferenceType(ObjectReference object)
If the Reference Type object has moved, return the new location. |
ObjectReference |
TraceLocal.getForwardedReferent(ObjectReference object)
If the reference object (from a Reference Type) has object has moved, return the new location. |
boolean |
MutatorContext.intBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of ints are about to be copied from object src to object dst (as in an array
copy). |
int |
MutatorContext.intRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a int. |
boolean |
MutatorContext.intTryCompareAndSwap(ObjectReference src,
Address slot,
int old,
int value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
MutatorContext.intWrite(ObjectReference src,
Address slot,
int value,
Word metaDataA,
Word metaDataB,
int mode)
Write a int. |
boolean |
TraceLocal.isLive(ObjectReference object)
Is the specified object live? |
boolean |
TraceLocal.isReachable(ObjectReference object)
Is the specified object reachable? |
boolean |
TraceLocal.isReferentLive(ObjectReference object)
Is the specified referent of a reference type object live? |
ObjectReference |
MutatorContext.javaLangReferenceReadBarrier(ObjectReference referent)
Read a reference type. |
boolean |
MutatorContext.longBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of longs are about to be copied from object src to object dst (as in an array
copy). |
long |
MutatorContext.longRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a long. |
boolean |
MutatorContext.longTryCompareAndSwap(ObjectReference src,
Address slot,
long old,
long value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
MutatorContext.longWrite(ObjectReference src,
Address slot,
long value,
Word metaDataA,
Word metaDataB,
int mode)
Write a long. |
boolean |
MutatorContext.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
void |
MutatorContext.objectReferenceNonHeapWrite(Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB)
A new reference is about to be created in a location that is not a regular heap object. |
ObjectReference |
MutatorContext.objectReferenceRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read an object reference. |
boolean |
MutatorContext.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
MutatorContext.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference value,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
boolean |
MutatorContext.offsetBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of Offsets are about to be copied from object src to object dst (as in an array
copy). |
Offset |
MutatorContext.offsetRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read an Offset. |
void |
MutatorContext.offsetWrite(ObjectReference src,
Address slot,
Offset value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Offset. |
void |
MutatorContext.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
void |
CollectorContext.postCopy(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform any post-copy actions. |
void |
TraceLocal.processEdge(ObjectReference source,
Address slot)
Trace a reference during GC. |
void |
TransitiveClosure.processEdge(ObjectReference source,
Address slot)
Trace an edge during GC. |
void |
TraceLocal.processInteriorEdge(ObjectReference target,
Address slot,
boolean root)
Trace a reference during GC. |
void |
TraceWriteBuffer.processNode(ObjectReference object)
Enqueue an object during a trace. |
void |
TraceLocal.processNode(ObjectReference object)
Add a gray object |
void |
TransitiveClosure.processNode(ObjectReference object)
Trace a node during GC. |
boolean |
TraceLocal.readyToFinalize(ObjectReference object)
Return true if an object is ready to move to the finalizable queue, i.e. it has no regular references to it. |
ObjectReference |
TraceLocal.retainForFinalize(ObjectReference object)
An object is unreachable and is about to be added to the finalizable queue. |
ObjectReference |
TraceLocal.retainReferent(ObjectReference object)
Make alive a referent object that is known not to be live (isLive is false). |
int |
Plan.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
Return the expected reference count. |
protected void |
TraceLocal.scanObject(ObjectReference object)
Collectors that move objects must override this method. |
boolean |
MutatorContext.shortBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of shorts are about to be copied from object src to object dst (as in an array
copy). |
short |
MutatorContext.shortRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a short. |
void |
MutatorContext.shortWrite(ObjectReference src,
Address slot,
short value,
Word metaDataA,
Word metaDataB,
int mode)
Write a short. |
void |
Plan.storeObjectReference(Address slot,
ObjectReference value)
Store an object reference |
ObjectReference |
TraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
TraceLocal.traceObject(ObjectReference object,
boolean root)
This method traces an object with knowledge of the fact that object is a root or not. |
boolean |
Plan.willNeverMove(ObjectReference object)
Can this object ever move. |
boolean |
TraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Ensure that the referenced object will not move from this point through to the end of the collection. |
boolean |
MutatorContext.wordBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of Words are about to be copied from object src to object dst (as in an array
copy). |
Word |
MutatorContext.wordRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
Read a Word. |
boolean |
MutatorContext.wordTryCompareAndSwap(ObjectReference src,
Address slot,
Word old,
Word value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
MutatorContext.wordWrite(ObjectReference src,
Address slot,
Word value,
Word metaDataA,
Word metaDataB,
int mode)
Write a Word. |
Uses of ObjectReference in org.mmtk.plan.concurrent |
---|
Methods in org.mmtk.plan.concurrent that return ObjectReference | |
---|---|
ObjectReference |
ConcurrentMutator.javaLangReferenceReadBarrier(ObjectReference ref)
|
Methods in org.mmtk.plan.concurrent with parameters of type ObjectReference | |
---|---|
protected abstract void |
ConcurrentMutator.checkAndEnqueueReference(ObjectReference ref)
Process a reference that may require being enqueued as part of a concurrent collection. |
ObjectReference |
ConcurrentMutator.javaLangReferenceReadBarrier(ObjectReference ref)
|
boolean |
ConcurrentMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
boolean |
ConcurrentMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
ConcurrentMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
Uses of ObjectReference in org.mmtk.plan.concurrent.marksweep |
---|
Methods in org.mmtk.plan.concurrent.marksweep that return ObjectReference | |
---|---|
ObjectReference |
CMSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.concurrent.marksweep with parameters of type ObjectReference | |
---|---|
protected void |
CMSMutator.checkAndEnqueueReference(ObjectReference ref)
Process a reference that may require being enqueued as part of a concurrent collection. |
boolean |
CMSTraceLocal.isLive(ObjectReference object)
|
void |
CMSMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
ObjectReference |
CMSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
CMS.willNeverMove(ObjectReference object)
|
Uses of ObjectReference in org.mmtk.plan.copyms |
---|
Methods in org.mmtk.plan.copyms that return ObjectReference | |
---|---|
ObjectReference |
CopyMSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.copyms with parameters of type ObjectReference | |
---|---|
Address |
CopyMSCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
CopyMSTraceLocal.isLive(ObjectReference object)
Is the specified object reachable? |
void |
CopyMSMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
void |
CopyMSCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
int |
CopyMS.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
|
ObjectReference |
CopyMSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
CopyMSTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current collection ? |
Uses of ObjectReference in org.mmtk.plan.generational |
---|
Methods in org.mmtk.plan.generational that return ObjectReference | |
---|---|
ObjectReference |
GenMatureTraceLocal.traceObject(ObjectReference object)
|
ObjectReference |
GenNurseryTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.generational with parameters of type ObjectReference | |
---|---|
private void |
GenMutator.fastPath(Address slot,
ObjectReference tgt)
Perform the root write barrier fast path, which may involve remembering a reference if necessary. |
private void |
GenMutator.fastPath(ObjectReference src,
Address slot,
ObjectReference tgt,
int mode)
Perform the write barrier fast path, which may involve remembering a reference if necessary. |
(package private) static boolean |
Gen.inNursery(ObjectReference obj)
Return true if the object resides within the nursery |
boolean |
GenMatureTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
boolean |
GenNurseryTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
boolean |
GenMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
void |
GenMutator.objectReferenceNonHeapWrite(Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB)
A new reference is about to be created in a location that is not a regular heap object. |
boolean |
GenMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
GenMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
void |
GenMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
int |
Gen.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
|
ObjectReference |
GenMatureTraceLocal.traceObject(ObjectReference object)
|
ObjectReference |
GenNurseryTraceLocal.traceObject(ObjectReference object)
|
boolean |
Gen.willNeverMove(ObjectReference object)
|
boolean |
GenMatureTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Return true if this object is guaranteed not to move during this
collection (i.e. this object is definitely not an unforwarded
object). |
boolean |
GenNurseryTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will the object move from now on during the collection. |
Uses of ObjectReference in org.mmtk.plan.generational.copying |
---|
Methods in org.mmtk.plan.generational.copying that return ObjectReference | |
---|---|
ObjectReference |
GenCopyMatureTraceLocal.traceObject(ObjectReference object)
Trace a reference into the mature space during GC. |
Methods in org.mmtk.plan.generational.copying with parameters of type ObjectReference | |
---|---|
Address |
GenCopyCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
GenCopyMatureTraceLocal.isLive(ObjectReference object)
|
void |
GenCopyMutator.postAlloc(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
void |
GenCopyCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
Perform any post-copy actions. |
ObjectReference |
GenCopyMatureTraceLocal.traceObject(ObjectReference object)
Trace a reference into the mature space during GC. |
boolean |
GenCopyMatureTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Return true if this object is guaranteed not to move during this
collection (i.e. this object is definitely not an unforwarded
object). |
Uses of ObjectReference in org.mmtk.plan.generational.immix |
---|
Methods in org.mmtk.plan.generational.immix that return ObjectReference | |
---|---|
ObjectReference |
GenImmixMatureDefragTraceLocal.traceObject(ObjectReference object)
|
ObjectReference |
GenImmixMatureTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.generational.immix with parameters of type ObjectReference | |
---|---|
Address |
GenImmixCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
GenImmixMatureDefragTraceLocal.isLive(ObjectReference object)
|
boolean |
GenImmixMatureTraceLocal.isLive(ObjectReference object)
|
void |
GenImmixMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
void |
GenImmixCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
protected void |
GenImmixMatureDefragTraceLocal.scanObject(ObjectReference object)
|
protected void |
GenImmixMatureTraceLocal.scanObject(ObjectReference object)
|
ObjectReference |
GenImmixMatureDefragTraceLocal.traceObject(ObjectReference object)
|
ObjectReference |
GenImmixMatureTraceLocal.traceObject(ObjectReference object)
|
boolean |
GenImmix.willNeverMove(ObjectReference object)
|
boolean |
GenImmixMatureDefragTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
|
boolean |
GenImmixMatureTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
|
Uses of ObjectReference in org.mmtk.plan.generational.marksweep |
---|
Methods in org.mmtk.plan.generational.marksweep that return ObjectReference | |
---|---|
ObjectReference |
GenMSMatureTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.generational.marksweep with parameters of type ObjectReference | |
---|---|
Address |
GenMSCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
GenMSMatureTraceLocal.isLive(ObjectReference object)
|
void |
GenMSMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
void |
GenMSCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
ObjectReference |
GenMSMatureTraceLocal.traceObject(ObjectReference object)
|
boolean |
GenMS.willNeverMove(ObjectReference object)
|
boolean |
GenMSMatureTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
|
Uses of ObjectReference in org.mmtk.plan.immix |
---|
Methods in org.mmtk.plan.immix that return ObjectReference | |
---|---|
ObjectReference |
ImmixDefragTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
ImmixTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.immix with parameters of type ObjectReference | |
---|---|
Address |
ImmixCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
ImmixDefragTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
boolean |
ImmixTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
void |
ImmixMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
void |
ImmixCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
protected void |
ImmixDefragTraceLocal.scanObject(ObjectReference object)
|
protected void |
ImmixTraceLocal.scanObject(ObjectReference object)
|
ObjectReference |
ImmixDefragTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
ImmixTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
Immix.willNeverMove(ObjectReference object)
|
boolean |
ImmixDefragTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Return true if this object is guaranteed not to move during this
collection (i.e. this object is defintely not an unforwarded
object). |
boolean |
ImmixTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Ensure that the referenced object will not move from this point through to the end of the collection. |
Uses of ObjectReference in org.mmtk.plan.markcompact |
---|
Methods in org.mmtk.plan.markcompact that return ObjectReference | |
---|---|
ObjectReference |
MCForwardTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
MCMarkTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.markcompact with parameters of type ObjectReference | |
---|---|
boolean |
MCForwardTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
boolean |
MCMarkTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
void |
MCMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
int |
MC.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
|
ObjectReference |
MCForwardTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
ObjectReference |
MCMarkTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
MC.willNeverMove(ObjectReference object)
|
boolean |
MCForwardTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace ? |
boolean |
MCMarkTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace ? |
Uses of ObjectReference in org.mmtk.plan.marksweep |
---|
Methods in org.mmtk.plan.marksweep that return ObjectReference | |
---|---|
ObjectReference |
MSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.marksweep with parameters of type ObjectReference | |
---|---|
boolean |
MSTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
void |
MSMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
ObjectReference |
MSTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
MS.willNeverMove(ObjectReference object)
Can this object ever move. |
Uses of ObjectReference in org.mmtk.plan.nogc |
---|
Methods in org.mmtk.plan.nogc that return ObjectReference | |
---|---|
ObjectReference |
NoGCTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.nogc with parameters of type ObjectReference | |
---|---|
boolean |
NoGCTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
void |
NoGCMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
ObjectReference |
NoGCTraceLocal.traceObject(ObjectReference object)
|
Uses of ObjectReference in org.mmtk.plan.poisoned |
---|
Methods in org.mmtk.plan.poisoned that return ObjectReference | |
---|---|
static ObjectReference |
Poisoned.depoison(Word value)
DePoison a reference value. |
ObjectReference |
Poisoned.loadObjectReference(Address slot)
|
ObjectReference |
PoisonedMutator.objectReferenceRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
|
Methods in org.mmtk.plan.poisoned with parameters of type ObjectReference | |
---|---|
ObjectReference |
PoisonedMutator.objectReferenceRead(ObjectReference src,
Address slot,
Word metaDataA,
Word metaDataB,
int mode)
|
boolean |
PoisonedMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
PoisonedMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
static Word |
Poisoned.poison(ObjectReference reference)
Poison a reference value. |
void |
Poisoned.storeObjectReference(Address slot,
ObjectReference value)
Store an object reference |
Uses of ObjectReference in org.mmtk.plan.refcount |
---|
Methods in org.mmtk.plan.refcount with parameters of type ObjectReference | |
---|---|
static boolean |
RCHeader.attemptToLog(ObjectReference object)
Attempt to log object for coalescing RC. |
static void |
RCHeader.clearMarked(ObjectReference object)
Has this object been marked by the most recent backup trace. |
private void |
RCBaseMutator.coalescingWriteBarrierSlow(ObjectReference srcObj)
Slow path of the coalescing write barrier. |
static int |
RCHeader.decRC(ObjectReference object)
Decrement the reference count of an object. |
static int |
RCHeader.getRC(ObjectReference object)
Return the reference count for the object. |
static int |
RCHeader.incRC(ObjectReference object)
Increment the reference count of an object. |
static void |
RCHeader.initializeHeader(ObjectReference object,
boolean initialInc)
Perform any required initialization of the GC portion of the header. |
static int |
RCHeader.initRC(ObjectReference object)
Initialize the reference count of an object. |
static boolean |
RCHeader.isLiveRC(ObjectReference object)
Return true if given object is live |
static boolean |
RCHeader.isMarked(ObjectReference object)
Has this object been marked by the most recent backup trace. |
static boolean |
RCHeader.isNew(ObjectReference object)
Has this object been marked as new. |
static boolean |
RCBase.isRCObject(ObjectReference object)
|
static boolean |
RCHeader.logRequired(ObjectReference object)
Return true if object is yet to be logged (for
coalescing RC). |
static void |
RCHeader.makeLogged(ObjectReference object)
Signify completion of logging object . |
static void |
RCHeader.makeUnlogged(ObjectReference object)
Change object 's state to UNLOGGED . |
boolean |
RCBaseMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
boolean |
RCBaseMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
RCBaseMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
void |
RCBaseMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
protected void |
RCDecBuffer.process(ObjectReference object)
|
void |
RCZero.processEdge(ObjectReference source,
Address slot)
|
static int |
RCHeader.remainRC(ObjectReference object)
Retain the reference count of an object. |
int |
RCBase.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
|
static boolean |
RCHeader.testAndMark(ObjectReference object)
Attempt to atomically mark this object. |
Uses of ObjectReference in org.mmtk.plan.refcount.backuptrace |
---|
Methods in org.mmtk.plan.refcount.backuptrace that return ObjectReference | |
---|---|
ObjectReference |
BTTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
Methods in org.mmtk.plan.refcount.backuptrace with parameters of type ObjectReference | |
---|---|
boolean |
BTTraceLocal.isLive(ObjectReference object)
Is the specified object reachable? |
void |
BTSweepImmortalScanner.scan(ObjectReference object)
Scan an object during sweep. |
boolean |
BTSweeper.sweepCell(ObjectReference object)
|
boolean |
BTFreeLargeObjectSweeper.sweepLargeObject(ObjectReference object)
|
ObjectReference |
BTTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
Uses of ObjectReference in org.mmtk.plan.refcount.fullheap |
---|
Methods in org.mmtk.plan.refcount.fullheap that return ObjectReference | |
---|---|
ObjectReference |
RCFindRootSetTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
ObjectReference |
RCFindRootSetTraceLocal.traceObject(ObjectReference object,
boolean root)
When we trace a root object we remember it. |
Methods in org.mmtk.plan.refcount.fullheap with parameters of type ObjectReference | |
---|---|
boolean |
RCFindRootSetTraceLocal.isLive(ObjectReference object)
Is the specified object reachable? |
void |
RCModifiedProcessor.processEdge(ObjectReference source,
Address slot)
|
ObjectReference |
RCFindRootSetTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
ObjectReference |
RCFindRootSetTraceLocal.traceObject(ObjectReference object,
boolean root)
When we trace a root object we remember it. |
Uses of ObjectReference in org.mmtk.plan.refcount.generational |
---|
Methods in org.mmtk.plan.refcount.generational that return ObjectReference | |
---|---|
ObjectReference |
GenRCFindRootSetTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
ObjectReference |
GenRCFindRootSetTraceLocal.traceObject(ObjectReference object,
boolean root)
When we trace a root object we remember it. |
Methods in org.mmtk.plan.refcount.generational with parameters of type ObjectReference | |
---|---|
Address |
GenRCCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
GenRCFindRootSetTraceLocal.isLive(ObjectReference object)
Is the specified object reachable? |
void |
GenRCMutator.postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
|
void |
GenRCCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
Perform any post-copy actions. |
void |
GenRCModifiedProcessor.processEdge(ObjectReference source,
Address slot)
|
ObjectReference |
GenRCFindRootSetTraceLocal.traceObject(ObjectReference object)
When we trace a non-root object we do nothing. |
ObjectReference |
GenRCFindRootSetTraceLocal.traceObject(ObjectReference object,
boolean root)
When we trace a root object we remember it. |
boolean |
GenRC.willNeverMove(ObjectReference object)
|
boolean |
GenRCFindRootSetTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
|
Uses of ObjectReference in org.mmtk.plan.semispace |
---|
Methods in org.mmtk.plan.semispace that return ObjectReference | |
---|---|
ObjectReference |
SSTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.semispace with parameters of type ObjectReference | |
---|---|
Address |
SSCollector.allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
boolean |
SSTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
static boolean |
SSCollector.isSemiSpaceObject(ObjectReference object)
Return true if the given reference is to an object that is within
one of the semi-spaces. |
void |
SSMutator.postAlloc(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
void |
SSCollector.postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
ObjectReference |
SSTraceLocal.traceObject(ObjectReference object)
|
boolean |
SS.willNeverMove(ObjectReference object)
|
boolean |
SSTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace ? |
Uses of ObjectReference in org.mmtk.plan.semispace.gcspy |
---|
Methods in org.mmtk.plan.semispace.gcspy that return ObjectReference | |
---|---|
ObjectReference |
SSGCspyTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.semispace.gcspy with parameters of type ObjectReference | |
---|---|
void |
SSGCspyMutator.postAlloc(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
|
ObjectReference |
SSGCspyTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
boolean |
SSGCspyTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace ? |
Uses of ObjectReference in org.mmtk.plan.semispace.gctrace |
---|
Methods in org.mmtk.plan.semispace.gctrace that return ObjectReference | |
---|---|
ObjectReference |
GCTraceTraceLocal.getForwardedReference(ObjectReference object)
|
ObjectReference |
GCTraceTraceLocal.traceObject(ObjectReference object)
Trace a reference during GC. |
Methods in org.mmtk.plan.semispace.gctrace with parameters of type ObjectReference | |
---|---|
ObjectReference |
GCTraceTraceLocal.getForwardedReference(ObjectReference object)
|
boolean |
GCTraceTraceLocal.isLive(ObjectReference object)
|
boolean |
GCTraceTraceLocal.isReachable(ObjectReference object)
Return true if obj is a reachable object. |
boolean |
GCTraceMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
boolean |
GCTraceMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
GCTraceMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
void |
GCTraceMutator.postAlloc(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
ObjectReference |
GCTraceTraceLocal.traceObject(ObjectReference object)
Trace a reference during GC. |
boolean |
GCTraceTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Is this object guaranteed not to move during the collection. |
Uses of ObjectReference in org.mmtk.plan.semispace.usePrimitiveWriteBarriers |
---|
Methods in org.mmtk.plan.semispace.usePrimitiveWriteBarriers with parameters of type ObjectReference | |
---|---|
boolean |
UsePrimitiveWriteBarriersMutator.addressTryCompareAndSwap(ObjectReference src,
Address slot,
Address old,
Address value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt to atomically exchange the value in the given slot with the passed replacement value. |
void |
UsePrimitiveWriteBarriersMutator.addressWrite(ObjectReference src,
Address slot,
Address value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Address. |
boolean |
UsePrimitiveWriteBarriersMutator.booleanBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.booleanWrite(ObjectReference src,
Address slot,
boolean value,
Word metaDataA,
Word metaDataB,
int mode)
Write a boolean. |
boolean |
UsePrimitiveWriteBarriersMutator.byteBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.byteWrite(ObjectReference src,
Address slot,
byte value,
Word metaDataA,
Word metaDataB,
int mode)
Write a byte. |
boolean |
UsePrimitiveWriteBarriersMutator.charBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.charWrite(ObjectReference src,
Address slot,
char value,
Word metaDataA,
Word metaDataB,
int mode)
Write a char. |
boolean |
UsePrimitiveWriteBarriersMutator.doubleBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.doubleWrite(ObjectReference src,
Address slot,
double value,
Word metaDataA,
Word metaDataB,
int mode)
Write a double. |
void |
UsePrimitiveWriteBarriersMutator.extentWrite(ObjectReference src,
Address slot,
Extent value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Extent. |
boolean |
UsePrimitiveWriteBarriersMutator.floatBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.floatWrite(ObjectReference src,
Address slot,
float value,
Word metaDataA,
Word metaDataB,
int mode)
Write a float. |
boolean |
UsePrimitiveWriteBarriersMutator.intBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
boolean |
UsePrimitiveWriteBarriersMutator.intTryCompareAndSwap(ObjectReference src,
Address slot,
int old,
int value,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
UsePrimitiveWriteBarriersMutator.intWrite(ObjectReference src,
Address slot,
int value,
Word metaDataA,
Word metaDataB,
int mode)
Write a int. |
boolean |
UsePrimitiveWriteBarriersMutator.longBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
boolean |
UsePrimitiveWriteBarriersMutator.longTryCompareAndSwap(ObjectReference src,
Address slot,
long old,
long value,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
UsePrimitiveWriteBarriersMutator.longWrite(ObjectReference src,
Address slot,
long value,
Word metaDataA,
Word metaDataB,
int mode)
Write a long. |
void |
UsePrimitiveWriteBarriersMutator.offsetWrite(ObjectReference src,
Address slot,
Offset value,
Word metaDataA,
Word metaDataB,
int mode)
Write an Offset. |
boolean |
UsePrimitiveWriteBarriersMutator.shortBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
|
void |
UsePrimitiveWriteBarriersMutator.shortWrite(ObjectReference src,
Address slot,
short value,
Word metaDataA,
Word metaDataB,
int mode)
Write a short. |
boolean |
UsePrimitiveWriteBarriersMutator.wordTryCompareAndSwap(ObjectReference src,
Address slot,
Word old,
Word value,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
UsePrimitiveWriteBarriersMutator.wordWrite(ObjectReference src,
Address slot,
Word value,
Word metaDataA,
Word metaDataB,
int mode)
Write a Word. |
Uses of ObjectReference in org.mmtk.plan.stickyimmix |
---|
Methods in org.mmtk.plan.stickyimmix that return ObjectReference | |
---|---|
ObjectReference |
StickyImmixNurseryTraceLocal.traceObject(ObjectReference object)
|
Methods in org.mmtk.plan.stickyimmix with parameters of type ObjectReference | |
---|---|
boolean |
StickyImmixNurseryTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
private void |
StickyImmixMutator.logSource(ObjectReference src)
Add an object to the modified objects buffer and mark the object has having been logged. |
boolean |
StickyImmixMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
boolean |
StickyImmixMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
StickyImmixMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
protected void |
StickyImmixNurseryTraceLocal.scanObject(ObjectReference object)
|
ObjectReference |
StickyImmixNurseryTraceLocal.traceObject(ObjectReference object)
|
boolean |
StickyImmixNurseryTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Return true if this object is guaranteed not to move during this
collection (i.e. this object is definitely not an unforwarded
object). |
Uses of ObjectReference in org.mmtk.plan.stickyms |
---|
Methods in org.mmtk.plan.stickyms that return ObjectReference | |
---|---|
ObjectReference |
StickyMSNurseryTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Methods in org.mmtk.plan.stickyms with parameters of type ObjectReference | |
---|---|
boolean |
StickyMSNurseryTraceLocal.isLive(ObjectReference object)
Is the specified object live? |
private void |
StickyMSMutator.logSource(ObjectReference src)
Add an object to the modified objects buffer and mark the object has having been logged. |
boolean |
StickyMSMutator.objectReferenceBulkCopy(ObjectReference src,
Offset srcOffset,
ObjectReference dst,
Offset dstOffset,
int bytes)
A number of references are about to be copied from object src to object dst (as in an array
copy). |
boolean |
StickyMSMutator.objectReferenceTryCompareAndSwap(ObjectReference src,
Address slot,
ObjectReference old,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
|
void |
StickyMSMutator.objectReferenceWrite(ObjectReference src,
Address slot,
ObjectReference tgt,
Word metaDataA,
Word metaDataB,
int mode)
Write an object reference. |
int |
StickyMS.sanityExpectedRC(ObjectReference object,
int sanityRootRC)
|
ObjectReference |
StickyMSNurseryTraceLocal.traceObject(ObjectReference object)
This method is the core method during the trace of the object graph. |
Uses of ObjectReference in org.mmtk.policy |
---|
Methods in org.mmtk.policy that return ObjectReference | |
---|---|
(package private) ObjectReference |
MarkCompactCollector.FromCursor.advanceToObject()
Advance from the cursor to the start of the next object. |
static ObjectReference |
MarkCompactSpace.getForwardingPointer(ObjectReference object)
Non-atomic read of forwarding pointer |
ObjectReference |
MarkCompactSpace.traceForwardObject(TraceLocal trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
MarkCompactSpace.traceMarkObject(TraceLocal trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
LargeObjectSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
ExplicitLargeObjectSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
ImmortalSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under an immortal collection policy. |
ObjectReference |
CopySpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
RawPageSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object. |
ObjectReference |
MarkSweepSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
MarkCompactSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object under a copying collection policy. |
abstract ObjectReference |
Space.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object as part of a collection and return the object, which may have been forwarded (if a copying collector). |
ObjectReference |
ExplicitFreeListSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
CopySpace.traceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace an object under a copying collection policy. |
Methods in org.mmtk.policy with parameters of type ObjectReference | |
---|---|
(package private) void |
MarkCompactCollector.FromCursor.advanceToObjectEnd(ObjectReference current)
Advance the cursor to the end of the given object. |
static void |
MarkCompactSpace.clearForwardingPointer(ObjectReference object)
Non-atomic clear of forwarding pointer word (assumption, thread doing the set has done attempt to forward and owns the right to copy the object) |
protected static void |
SegregatedFreeListSpace.clearLiveBit(ObjectReference object)
Clear the live bit for a given object |
static void |
MarkCompactSpace.clearMark(ObjectReference object)
Used to mark boot image objects during a parallel scan of objects during GC Returns true if marking was done. |
(package private) void |
MarkCompactCollector.ToCursor.copy(ObjectReference from,
ObjectReference to)
Copy an object to an address within this cursor's region. |
void |
ExplicitLargeObjectSpace.free(ObjectReference object)
Free an object |
void |
ExplicitFreeListSpace.free(ObjectReference object)
Free an object. |
static ObjectReference |
MarkCompactSpace.getForwardingPointer(ObjectReference object)
Non-atomic read of forwarding pointer |
static Space |
Space.getSpaceForObject(ObjectReference object)
Return the space for a given object |
void |
ImmortalSpace.initializeHeader(ObjectReference object)
Initialize the object header post-allocation. |
void |
MarkCompactSpace.initializeHeader(ObjectReference object)
Initialise the header of the object. |
void |
LargeObjectSpace.initializeHeader(ObjectReference object,
boolean alloc)
Perform any required initialization of the GC portion of the header. |
void |
ExplicitLargeObjectSpace.initializeHeader(ObjectReference object,
boolean alloc)
Perform any required initialization of the GC portion of the header. |
void |
MarkSweepSpace.initializeHeader(ObjectReference object,
boolean alloc)
Perform any required initialization of the GC portion of the header. |
private void |
LargeObjectSpace.internalMarkObject(ObjectReference object,
boolean nurseryObject)
An object has been marked (identifiged as live). |
protected boolean |
SegregatedFreeListSpace.isCellLive(ObjectReference object)
In the cell containing this object live? |
protected boolean |
MarkSweepSpace.isCellLive(ObjectReference object)
Should the sweep reclaim the cell containing this object. |
static boolean |
Space.isImmortal(ObjectReference object)
Return true if the given object is in an immortal (uncollected) space. |
private boolean |
LargeObjectSpace.isInNursery(ObjectReference object)
Return true if the object is in the logical nursery |
(package private) boolean |
MarkCompactCollector.RegionCursor.isInRegion(ObjectReference ref)
|
static boolean |
Space.isInSpace(int descriptor,
ObjectReference object)
Return true if the given object is the space associated with the
given descriptor. |
boolean |
LargeObjectSpace.isLive(ObjectReference object)
|
boolean |
ExplicitLargeObjectSpace.isLive(ObjectReference object)
|
boolean |
ImmortalSpace.isLive(ObjectReference object)
|
boolean |
CopySpace.isLive(ObjectReference object)
Return true if this object is live in this GC |
boolean |
RawPageSpace.isLive(ObjectReference object)
|
boolean |
MarkSweepSpace.isLive(ObjectReference object)
|
boolean |
MarkCompactSpace.isLive(ObjectReference object)
|
abstract boolean |
Space.isLive(ObjectReference object)
Is the object in this space alive? |
boolean |
ExplicitFreeListSpace.isLive(ObjectReference object)
|
static boolean |
Space.isMappedObject(ObjectReference object)
Return true if the given object is in a space managed by MMTk. |
static boolean |
MarkCompactSpace.isMarked(ObjectReference object)
Used to mark boot image objects during a parallel scan of objects during GC Returns true if marking was done. |
static boolean |
Space.isMovable(ObjectReference object)
Return true if the given object is in space that moves objects. |
boolean |
ImmortalSpace.isReachable(ObjectReference object)
Returns if the object in question is currently thought to be reachable. |
boolean |
CopySpace.isReachable(ObjectReference object)
|
boolean |
MarkCompactSpace.isReachable(ObjectReference object)
|
boolean |
Space.isReachable(ObjectReference object)
Has the object in this space been reached during the current collection. |
protected static boolean |
SegregatedFreeListSpace.liveBitSet(ObjectReference object)
Test the live bit for a given object |
protected static void |
SegregatedFreeListSpace.markBlock(ObjectReference object)
Set the live bit for the block containing the given object |
void |
CopySpace.postAlloc(ObjectReference object)
Perform any required post-allocation initialization Nothing to be done in this case |
void |
MarkSweepSpace.postAlloc(ObjectReference object)
Perform any required post allocation initialization |
void |
MarkCompactSpace.postAlloc(ObjectReference object)
Perform any required post-allocation initialization Nothing to be done in this case |
void |
MarkSweepSpace.postCopy(ObjectReference object,
boolean majorGC)
Perform any required post copy (i.e. in-GC allocation) initialization. |
protected boolean |
SegregatedFreeListSpace.reclaimCellForObject(ObjectReference object)
Should the sweep reclaim the cell containing this object. |
static void |
MarkCompactSpace.setForwardingPointer(ObjectReference object,
ObjectReference ptr)
Non-atomic write of forwarding pointer word (assumption, thread doing the set has done attempt to forward and owns the right to copy the object) |
abstract boolean |
SegregatedFreeListSpace.Sweeper.sweepCell(ObjectReference object)
|
abstract boolean |
ExplicitLargeObjectSpace.Sweeper.sweepLargeObject(ObjectReference object)
|
private static boolean |
MarkCompactSpace.testAndClearMark(ObjectReference object)
Used to mark boot image objects during a parallel scan of objects during GC Returns true if marking was done. |
private boolean |
MarkSweepSpace.testAndMark(ObjectReference object)
Atomically attempt to set the mark bit of an object. |
static boolean |
MarkCompactSpace.testAndMark(ObjectReference object)
Used to mark boot image objects during a parallel scan of objects during GC. |
private boolean |
LargeObjectSpace.testAndMark(ObjectReference object,
byte value)
Atomically attempt to set the mark bit of an object. |
private static boolean |
ImmortalSpace.testAndMark(ObjectReference object,
byte value)
Used to mark boot image objects during a parallel scan of objects during GC Returns true if marking was done. |
static boolean |
SegregatedFreeListSpace.testAndSetLiveBit(ObjectReference object)
Atomically set the live bit for a given object |
private boolean |
LargeObjectSpace.testMarkBit(ObjectReference object,
byte value)
Return true if the mark bit for an object has the given value. |
private boolean |
MarkSweepSpace.testMarkState(ObjectReference object)
Return true if the mark count for an object has the given value. |
static boolean |
MarkCompactSpace.toBeCompacted(ObjectReference object)
Used to mark boot image objects during a parallel scan of objects during GC Returns true if marking was done. |
ObjectReference |
MarkCompactSpace.traceForwardObject(TraceLocal trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
MarkCompactSpace.traceMarkObject(TraceLocal trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
LargeObjectSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
ExplicitLargeObjectSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
ImmortalSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under an immortal collection policy. |
ObjectReference |
CopySpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object under a copying collection policy. |
ObjectReference |
RawPageSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object. |
ObjectReference |
MarkSweepSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
MarkCompactSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object under a copying collection policy. |
abstract ObjectReference |
Space.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace an object as part of a collection and return the object, which may have been forwarded (if a copying collector). |
ObjectReference |
ExplicitFreeListSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object under a mark sweep collection policy. |
ObjectReference |
CopySpace.traceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace an object under a copying collection policy. |
protected static void |
SegregatedFreeListSpace.unsyncClearLiveBit(ObjectReference object)
Clear the live bit for a given object |
static boolean |
SegregatedFreeListSpace.unsyncSetLiveBit(ObjectReference object)
Set the live bit for a given object, without using synchronization primitives---must only be used when contention for live bit is strictly not possible |
Uses of ObjectReference in org.mmtk.policy.immix |
---|
Methods in org.mmtk.policy.immix that return ObjectReference | |
---|---|
ObjectReference |
ImmixSpace.fastTraceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object in the context of a non-moving collection. |
ObjectReference |
ImmixSpace.nurseryTraceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace a reference to an object during a nursery collection for a sticky mark bits implementation of immix. |
ObjectReference |
ImmixSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object. |
ObjectReference |
ImmixSpace.traceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace a reference to an object. |
private ObjectReference |
ImmixSpace.traceObjectWithOpportunisticCopy(TransitiveClosure trace,
ObjectReference object,
int allocator,
boolean nurseryCollection)
Trace a reference to an object, forwarding the object if appropriate If the object is not already marked, mark the object and enqueue it for subsequent processing. |
Methods in org.mmtk.policy.immix with parameters of type ObjectReference | |
---|---|
boolean |
ImmixSpace.copyNurseryIsLive(ObjectReference object)
Test the liveness of an object during copying sticky mark bits collection |
boolean |
ImmixSpace.fastIsLive(ObjectReference object)
Test the liveness of an object during defragmentation |
ObjectReference |
ImmixSpace.fastTraceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object in the context of a non-moving collection. |
private boolean |
ImmixSpace.isDefragSource(ObjectReference object)
|
boolean |
ImmixSpace.isLive(ObjectReference object)
Generic test of the liveness of an object |
(package private) static boolean |
ObjectHeader.isMatureObject(ObjectReference object)
|
(package private) static boolean |
ObjectHeader.isNewObject(ObjectReference object)
|
(package private) static boolean |
ObjectHeader.isPinnedObject(ObjectReference object)
|
(package private) static boolean |
ObjectHeader.isStraddlingObject(ObjectReference object)
|
(package private) static void |
ObjectHeader.markAsStraddling(ObjectReference object)
|
void |
ImmixSpace.markLines(ObjectReference object)
Mark the line/s associated with a given object. |
(package private) static void |
Line.markMultiLine(Address start,
ObjectReference object,
byte markValue)
|
ObjectReference |
ImmixSpace.nurseryTraceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace a reference to an object during a nursery collection for a sticky mark bits implementation of immix. |
static void |
ObjectHeader.pinObject(ObjectReference object)
|
void |
ImmixSpace.postAlloc(ObjectReference object,
int bytes)
Perform any required post allocation initialization |
void |
ImmixSpace.postCopy(ObjectReference object,
int bytes,
boolean majorGC)
Perform any required post copy (i.e. in-GC allocation) initialization. |
(package private) static void |
ObjectHeader.returnToPriorStateAndEnsureUnlogged(ObjectReference object,
byte status)
|
(package private) static void |
ObjectHeader.setMarkStateUnlogAndUnlock(ObjectReference object,
byte gcByte,
byte markState)
|
(package private) static byte |
ObjectHeader.testAndMark(ObjectReference object,
byte markState)
Non-atomically test and set the mark bit of an object. |
(package private) static boolean |
ObjectHeader.testMarkState(ObjectReference object,
byte value)
Return true if the mark count for an object has the given value. |
ObjectReference |
ImmixSpace.traceObject(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object. |
ObjectReference |
ImmixSpace.traceObject(TransitiveClosure trace,
ObjectReference object,
int allocator)
Trace a reference to an object. |
private ObjectReference |
ImmixSpace.traceObjectWithOpportunisticCopy(TransitiveClosure trace,
ObjectReference object,
int allocator,
boolean nurseryCollection)
Trace a reference to an object, forwarding the object if appropriate If the object is not already marked, mark the object and enqueue it for subsequent processing. |
private void |
ImmixSpace.traceObjectWithoutMoving(TransitiveClosure trace,
ObjectReference object)
Trace a reference to an object in the context of a non-moving collection. |
boolean |
ImmixSpace.willNotMoveThisGC(ObjectReference object)
|
boolean |
ImmixSpace.willNotMoveThisNurseryGC(ObjectReference object)
|
(package private) static void |
ObjectHeader.writeMarkState(ObjectReference object,
byte markState,
boolean straddle)
Write the allocState into the mark state fields of an object non-atomically. |
Uses of ObjectReference in org.mmtk.utility |
---|
Methods in org.mmtk.utility that return ObjectReference | |
---|---|
static ObjectReference |
ForwardingWord.extractForwardingPointer(Word forwardingWord)
|
static ObjectReference |
ForwardingWord.forwardObject(ObjectReference object,
int allocator)
|
static ObjectReference |
ForwardingWord.spinAndGetForwardedObject(ObjectReference object,
Word statusWord)
|
Methods in org.mmtk.utility with parameters of type ObjectReference | |
---|---|
static void |
TraceGenerator.addTraceObject(ObjectReference ref,
int linkSpace)
Add a newly allocated object into the linked list of objects in a region. |
static Word |
ForwardingWord.attemptToForward(ObjectReference object)
Either return the forwarding pointer if the object is already forwarded (or being forwarded) or write the bit pattern that indicates that the object is being forwarded |
static void |
ForwardingWord.clearForwardingBits(ObjectReference object)
Clear the GC forwarding portion of the header for an object. |
static ObjectReference |
ForwardingWord.forwardObject(ObjectReference object,
int allocator)
|
static boolean |
ForwardingWord.isForwarded(ObjectReference object)
Has an object been forwarded? |
static boolean |
ForwardingWord.isForwardedOrBeingForwarded(ObjectReference object)
Has an object been forwarded or is it being forwarded? |
static boolean |
HeaderByte.isUnlogged(ObjectReference object)
Return true if the specified object needs to be logged. |
static void |
HeaderByte.markAsLogged(ObjectReference object)
Mark an object as logged. |
static void |
HeaderByte.markAsUnlogged(ObjectReference object)
|
(package private) abstract void |
CycleDetector.possibleCycleRoot(ObjectReference object)
|
static void |
TraceGenerator.processPointerUpdate(boolean isScalar,
ObjectReference src,
Address slot,
ObjectReference tgt)
Do any tracing work required at each a pointer store operation. |
static void |
TraceGenerator.propagateDeathTime(ObjectReference ref)
This propagates the death time being computed to the object passed as an address. |
static void |
TraceGenerator.rootEnumerate(ObjectReference obj)
This method is called for each root-referenced object at every Merlin root enumeration. |
static byte |
HeaderByte.setBuildTimeGCByte(Address object,
ObjectReference typeRef,
int size)
Perform any required initialization of the GC portion of the header. |
static void |
ForwardingWord.setForwardingPointer(ObjectReference object,
ObjectReference ptr)
Non-atomic write of forwarding pointer word (assumption, thread doing the set has done attempt to forward and owns the right to copy the object) |
static ObjectReference |
ForwardingWord.spinAndGetForwardedObject(ObjectReference object,
Word statusWord)
|
static void |
TraceGenerator.traceAlloc(boolean isImmortal,
ObjectReference ref,
ObjectReference typeRef,
int bytes)
Do any tracing work required at each object allocation. |
static void |
Log.write(ObjectReference o)
writes an object reference, in hexadecimal. |
static void |
Log.writeln(ObjectReference o)
writes an object reference, in hexadecimal, and a new-line, then flushes the buffer. |
static void |
Log.writeln(ObjectReference o,
boolean flush)
writes an object reference, in hexadecimal, and a new-line, then optionally flushes the buffer. |
Uses of ObjectReference in org.mmtk.utility.alloc |
---|
Methods in org.mmtk.utility.alloc with parameters of type ObjectReference | |
---|---|
static void |
BlockAllocator.markBlockMeta(ObjectReference ref)
Mark the metadata for this block. |
void |
DumpLinearScan.scan(ObjectReference object)
|
abstract void |
LinearScan.scan(ObjectReference object)
Scan an object. |
Uses of ObjectReference in org.mmtk.utility.deque |
---|
Methods in org.mmtk.utility.deque that return ObjectReference | |
---|---|
ObjectReference |
SortTODObjectReferenceStack.pop()
Pop an address from the address stack, return zero if the stack is empty. |
ObjectReference |
ObjectReferenceBuffer.pop()
Retrieves an object. |
ObjectReference |
ObjectReferenceDeque.pop()
Pop an object from the object queue, return zero if the queue is empty. |
Methods in org.mmtk.utility.deque with parameters of type ObjectReference | |
---|---|
void |
ObjectReferenceDeque.insert(ObjectReference object)
Insert an object into the object queue. |
protected abstract void |
ObjectReferenceBuffer.process(ObjectReference object)
This is the method that ensures |
void |
ObjectReferenceBuffer.processChildren(ObjectReference object)
Process each of the child objects for the passed object. |
void |
ObjectReferenceBuffer.processEdge(ObjectReference source,
Address slot)
|
void |
SortTODObjectReferenceStack.push(ObjectReference object)
Push an address onto the address stack. |
void |
ObjectReferenceBuffer.push(ObjectReference object)
Pushes an object onto the queue, forcing an inlined sequence. |
void |
ObjectReferenceDeque.push(ObjectReference object)
Push an object onto the object queue. |
void |
ObjectReferenceBuffer.pushOOL(ObjectReference object)
Pushes an object onto the queue, forcing an out of line sequence. |
void |
ObjectReferenceDeque.pushOOL(ObjectReference object)
Push an object onto the object queue, force this out of line ("OOL"), in some circumstances it is too expensive to have the push inlined, so this call is made. |
Uses of ObjectReference in org.mmtk.utility.gcspy |
---|
Methods in org.mmtk.utility.gcspy with parameters of type ObjectReference | |
---|---|
void |
LinearScan.scan(ObjectReference obj)
Scan an object. |
Uses of ObjectReference in org.mmtk.utility.gcspy.drivers |
---|
Methods in org.mmtk.utility.gcspy.drivers with parameters of type ObjectReference | |
---|---|
void |
ImmortalSpaceDriver.Closure.processEdge(ObjectReference source,
Address slot)
Process an edge. |
void |
LinearSpaceDriver.scan(ObjectReference obj)
Update the tile statistics |
void |
AbstractDriver.scan(ObjectReference obj)
Scan an object found at a location. |
void |
ImmortalSpaceDriver.scan(ObjectReference object,
boolean total)
Update the tile statistics. |
void |
LinearSpaceDriver.scan(ObjectReference obj,
boolean total)
Update the tile statistics |
void |
AbstractDriver.scan(ObjectReference obj,
boolean total)
Scan an object found at a location. |
protected boolean |
LinearSpaceDriver.scanCheckPrimitiveArray(ObjectReference obj,
int index,
boolean total,
int length)
Check if this Object is an array of primitives. |
Uses of ObjectReference in org.mmtk.utility.heap |
---|
Methods in org.mmtk.utility.heap with parameters of type ObjectReference | |
---|---|
static boolean |
Mmapper.objectIsMapped(ObjectReference object)
Return true if the given object has been mmapped |
Uses of ObjectReference in org.mmtk.utility.sanitychecker |
---|
Methods in org.mmtk.utility.sanitychecker that return ObjectReference | |
---|---|
static ObjectReference |
SanityDataTable.getObjectReference(Address entry)
Given an address of an entry, read the reference component. |
ObjectReference |
SanityRootTraceLocal.traceObject(ObjectReference object,
boolean root)
Trace a root object, i.e. root must be true . |
ObjectReference |
SanityTraceLocal.traceObject(ObjectReference object,
boolean root)
This method traces an object with knowledge of the fact that object is a root or not. |
Methods in org.mmtk.utility.sanitychecker with parameters of type ObjectReference | |
---|---|
static void |
SanityChecker.dumpObjectInformation(ObjectReference object)
Print out object information (used for warning and error messages) |
Address |
SanityDataTable.getEntry(ObjectReference object,
boolean create)
Get an entry for an object. |
void |
SanityChecker.processObject(TraceLocal trace,
ObjectReference object,
boolean root)
Process an object during sanity checking, validating data, incrementing counters and enqueuing if this is the first visit to the object. |
void |
SanityLinearScan.scan(ObjectReference object)
|
void |
SanityChecker.scanProcessObject(ObjectReference object)
Process an object during a linear scan of the heap. |
ObjectReference |
SanityRootTraceLocal.traceObject(ObjectReference object,
boolean root)
Trace a root object, i.e. root must be true . |
ObjectReference |
SanityTraceLocal.traceObject(ObjectReference object,
boolean root)
This method traces an object with knowledge of the fact that object is a root or not. |
boolean |
SanityRootTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace ? |
boolean |
SanityTraceLocal.willNotMoveInCurrentCollection(ObjectReference object)
Will this object move from this point on, during the current trace? |
Uses of ObjectReference in org.mmtk.vm |
---|
Methods in org.mmtk.vm that return ObjectReference | |
---|---|
abstract ObjectReference |
ObjectModel.copy(ObjectReference from,
int allocator)
Copy an object using a plan's allocCopy to get space and install the forwarding pointer. |
abstract ObjectReference |
TraceInterface.getLink(ObjectReference ref)
|
abstract ObjectReference |
ObjectModel.getNextObject(ObjectReference object)
Return the next object in the heap under contiguous allocation |
abstract ObjectReference |
ObjectModel.getObjectFromStartAddress(Address start)
Return an object reference from knowledge of the low order word |
abstract ObjectReference |
ObjectModel.getReferenceWhenCopiedTo(ObjectReference from,
Address to)
Return the reference that an object will be referred to after it is copied to the specified region. |
abstract ObjectReference |
Barriers.objectReferenceAtomicWrite(ObjectReference ref,
ObjectReference target,
Word metaDataA,
Word metaDataB,
int mode)
Atomically write a reference field of an object or array and return the old value of the reference field. |
abstract ObjectReference |
Barriers.objectReferenceRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a read barrier. |
Methods in org.mmtk.vm with parameters of type ObjectReference | |
---|---|
abstract Address |
Barriers.addressRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Address. |
abstract boolean |
Barriers.addressTryCompareAndSwap(ObjectReference ref,
Address old,
Address target,
Word metaDataA,
Word metaDataB,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
abstract void |
Barriers.addressWrite(ObjectReference ref,
Address target,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Address. |
abstract Offset |
TraceInterface.adjustSlotOffset(boolean isScalar,
ObjectReference src,
Address slot)
This adjusts the offset into an object to reflect what it would look like if the fields were laid out in memory space immediately after the object pointer. |
abstract boolean |
ObjectModel.attemptAvailableBits(ObjectReference object,
Word oldVal,
Word newVal)
Attempts to set the bits available for memory manager use in an object. |
abstract boolean |
Barriers.booleanRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a boolean read barrier. |
abstract void |
Barriers.booleanWrite(ObjectReference ref,
boolean value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a boolean write barrier. |
abstract byte |
Barriers.byteRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a byte read barrier. |
abstract void |
Barriers.byteWrite(ObjectReference ref,
byte value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a byte write barrier. |
abstract char |
Barriers.charRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a char read barrier. |
abstract void |
Barriers.charWrite(ObjectReference ref,
char value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a char write barrier. |
abstract ObjectReference |
ObjectModel.copy(ObjectReference from,
int allocator)
Copy an object using a plan's allocCopy to get space and install the forwarding pointer. |
abstract Address |
ObjectModel.copyTo(ObjectReference from,
ObjectReference to,
Address region)
Copy an object to be pointer to by the to address. |
abstract double |
Barriers.doubleRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a double read barrier. |
abstract void |
Barriers.doubleWrite(ObjectReference ref,
double value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a double write barrier. |
abstract void |
ObjectModel.dumpObject(ObjectReference object)
Dump debugging information for an object. |
abstract Extent |
Barriers.extentRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Extent. |
abstract void |
Barriers.extentWrite(ObjectReference ref,
Extent target,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Extent. |
abstract float |
Barriers.floatRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a float read barrier. |
abstract void |
Barriers.floatWrite(ObjectReference ref,
float value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a float write barrier. |
abstract int |
ObjectModel.getAlignOffsetWhenCopied(ObjectReference object)
Return the alignment offset requirements for a copy of this object |
abstract int |
ObjectModel.getAlignWhenCopied(ObjectReference object)
Return the alignment requirement for a copy of this object |
abstract int |
ObjectModel.getArrayLength(ObjectReference object)
Get the length of an array object. |
abstract int |
ObjectModel.getCurrentSize(ObjectReference object)
Return the size used by an object |
abstract Word |
TraceInterface.getDeathTime(ObjectReference ref)
|
abstract ObjectReference |
TraceInterface.getLink(ObjectReference ref)
|
abstract ObjectReference |
ObjectModel.getNextObject(ObjectReference object)
Return the next object in the heap under contiguous allocation |
abstract Address |
ObjectModel.getObjectEndAddress(ObjectReference object)
Gets a pointer to the address just past the end of the object. |
abstract Word |
TraceInterface.getOID(ObjectReference ref)
|
abstract ObjectReference |
ObjectModel.getReferenceWhenCopiedTo(ObjectReference from,
Address to)
Return the reference that an object will be referred to after it is copied to the specified region. |
abstract int |
ObjectModel.getSizeWhenCopied(ObjectReference object)
Return the size required to copy an object |
abstract byte[] |
ObjectModel.getTypeDescriptor(ObjectReference ref)
Get the type descriptor for an object. |
abstract int |
Barriers.intRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a int read barrier. |
abstract boolean |
Barriers.intTryCompareAndSwap(ObjectReference objref,
int old,
int value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
abstract void |
Barriers.intWrite(ObjectReference ref,
int value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a int write barrier. |
abstract boolean |
ObjectModel.isAcyclic(ObjectReference typeRef)
Checks if a reference of the given type in another object is inherently acyclic. |
abstract boolean |
ObjectModel.isArray(ObjectReference object)
Is the passed object an array? |
abstract boolean |
ObjectModel.isPrimitiveArray(ObjectReference object)
Is the passed object a primitive array? |
abstract long |
Barriers.longRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a long read barrier. |
abstract boolean |
Barriers.longTryCompareAndSwap(ObjectReference objref,
long old,
long value,
Word metaDataA,
Word metaDataB,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
abstract void |
Barriers.longWrite(ObjectReference ref,
long value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a long write barrier. |
void |
Debug.modbufEntry(ObjectReference object)
A modbuf (object remembering barrier) entry has been traced during collection. |
abstract ObjectReference |
Barriers.objectReferenceAtomicWrite(ObjectReference ref,
ObjectReference target,
Word metaDataA,
Word metaDataB,
int mode)
Atomically write a reference field of an object or array and return the old value of the reference field. |
abstract void |
Barriers.objectReferenceNonHeapWrite(Address slot,
ObjectReference target,
Word metaDataA,
Word metaDataB)
Perform the actual write of the non-heap write barrier. |
abstract ObjectReference |
Barriers.objectReferenceRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a read barrier. |
abstract boolean |
Barriers.objectReferenceTryCompareAndSwap(ObjectReference ref,
ObjectReference old,
ObjectReference target,
Word metaDataA,
Word metaDataB,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
abstract void |
Barriers.objectReferenceWrite(ObjectReference ref,
ObjectReference value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of an object reference write barrier. |
abstract Address |
ObjectModel.objectStartRef(ObjectReference object)
Returns the lowest address of the storage associated with an object. |
abstract Offset |
Barriers.offsetRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Offset. |
abstract void |
Barriers.offsetWrite(ObjectReference ref,
Offset target,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Offset. |
abstract Word |
ObjectModel.prepareAvailableBits(ObjectReference object)
Gets the value of bits available for memory manager use in an object, in preparation for setting those bits. |
abstract Word |
ObjectModel.readAvailableBitsWord(ObjectReference object)
Read the bits available for memory manager use in an object. |
abstract byte |
ObjectModel.readAvailableByte(ObjectReference object)
Read the byte available for memory manager use in an object. |
abstract Address |
ObjectModel.refToAddress(ObjectReference object)
Returns an address guaranteed to be inside the storage assocatied with and object. |
abstract void |
Scanning.scanObject(TransitiveClosure trace,
ObjectReference object)
Delegated scanning of a object, processing each pointer field encountered. |
abstract void |
TraceInterface.setDeathTime(ObjectReference ref,
Word time_)
|
abstract void |
TraceInterface.setLink(ObjectReference ref,
ObjectReference link)
|
abstract short |
Barriers.shortRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of a short read barrier. |
abstract void |
Barriers.shortWrite(ObjectReference ref,
short value,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of a short write barrier. |
abstract Address |
TraceInterface.skipOwnFramesAndDump(ObjectReference typeRef)
This skips over the frames added by the tracing algorithm, outputs information identifying the method the containts the "new" call triggering the allocation, and returns the address of the first non-trace, non-alloc stack frame. |
abstract void |
Scanning.specializedScanObject(int id,
TransitiveClosure trace,
ObjectReference object)
Invoke a specialized scan method. |
void |
Debug.traceObject(TraceLocal trace,
ObjectReference object)
Trace an object during GC *** Non-standard, requires plumbing into a collector during debugging *** |
abstract void |
TraceInterface.updateDeathTime(ObjectReference obj)
Update an object's death time. |
abstract Word |
Barriers.wordAtomicWrite(ObjectReference ref,
Word rawTarget,
Word metaDataA,
Word metaDataB,
int mode)
Atomically write a Word field of an object or array and return the old value of the Word field. |
abstract Word |
Barriers.wordRead(ObjectReference ref,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual read of the read barrier, returning the value as a raw Word. |
abstract boolean |
Barriers.wordTryCompareAndSwap(ObjectReference ref,
Word old,
Word target,
Word metaDataA,
Word metaDataB,
int mode)
Attempt an atomic compare and exchange in a write barrier sequence. |
abstract void |
Barriers.wordWrite(ObjectReference ref,
Word target,
Word metaDataA,
Word metaDataB,
int mode)
Perform the actual write of the write barrier, writing the value as a raw Word. |
abstract void |
ObjectModel.writeAvailableBitsWord(ObjectReference object,
Word val)
Sets the bits available for memory manager use in an object. |
abstract void |
ObjectModel.writeAvailableByte(ObjectReference object,
byte val)
Sets the byte available for memory manager use in an object. |
Uses of ObjectReference in org.vmmagic.unboxed |
---|
Methods in org.vmmagic.unboxed that return ObjectReference | |
---|---|
static ObjectReference |
ObjectReference.fromObject(Object obj)
Convert from an object to a reference. |
ObjectReference |
ObjectReferenceArray.get(int index)
|
ObjectReference |
Address.loadObjectReference()
Loads a reference from the memory location pointed to by the current instance. |
ObjectReference |
Address.loadObjectReference(Offset offset)
Loads a reference from the memory location pointed to by the current instance. |
static ObjectReference |
ObjectReference.nullReference()
Return a null reference |
ObjectReference |
Address.prepareObjectReference()
Prepare for an atomic store operation. |
ObjectReference |
Address.prepareObjectReference(Offset offset)
Prepare for an atomic store operation. |
ObjectReference |
Address.toObjectReference()
Fabricate an ObjectReference instance from an
Address instance. |
Methods in org.vmmagic.unboxed with parameters of type ObjectReference | |
---|---|
boolean |
Address.attempt(ObjectReference old,
ObjectReference value)
Attempt an atomic store operation. |
boolean |
Address.attempt(ObjectReference old,
ObjectReference value,
Offset offset)
Attempt an atomic store operation. |
void |
ObjectReferenceArray.set(int index,
ObjectReference v)
|
void |
Address.store(ObjectReference value)
Stores the address value in the memory location pointed to by the current instance. |
void |
Address.store(ObjectReference value,
Offset offset)
Stores the object reference value in the memory location pointed to by the current instance. |
|
|||||||||||
PREV NEXT | FRAMES NO FRAMES |