public final class TraceInterface extends TraceInterface
Modifier and Type | Field and Description |
---|---|
private static byte[][] |
allocCallMethods |
Constructor and Description |
---|
TraceInterface() |
Modifier and Type | Method and Description |
---|---|
Offset |
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.
|
boolean |
gcEnabled()
Returns
true if the VM is ready for a garbage collection. |
Address |
getBootImageLink() |
Word |
getDeathTime(ObjectReference ref) |
int |
getHeaderEndOffset() |
int |
getHeaderSize() |
ObjectReference |
getLink(ObjectReference ref) |
Word |
getOID() |
Word |
getOID(ObjectReference ref) |
private boolean |
isAllocCall(byte[] name)
Given a method name, determine if it is a "real" method or one
used for allocation/tracing.
|
void |
setDeathTime(ObjectReference ref,
Word time_) |
void |
setLink(ObjectReference ref,
ObjectReference link) |
void |
setOID(Word oid) |
Address |
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.
|
void |
updateDeathTime(ObjectReference obj)
Update an object's death time.
|
void |
updateTime(Word time_) |
private static byte[][] allocCallMethods
public TraceInterface()
public boolean gcEnabled()
true
if the VM is ready for a garbage collection.gcEnabled
in class TraceInterface
true
if the VM is ready for GC, false
otherwise.private boolean isAllocCall(byte[] name)
name
- The method name to test as an array of bytestrue
if the method is a "real" method, false
otherwise.public Offset adjustSlotOffset(boolean isScalar, ObjectReference src, Address slot)
TraceInterface
adjustSlotOffset
in class TraceInterface
isScalar
- If this is a pointer store to a scalar objectsrc
- The address of the source objectslot
- The address within src
into which
the update will be storedpublic Address skipOwnFramesAndDump(ObjectReference typeRef)
TraceInterface
skipOwnFramesAndDump
in class TraceInterface
typeRef
- The type reference (tib) of the object just allocatedpublic void updateDeathTime(ObjectReference obj)
updateDeathTime
in class TraceInterface
obj
- the objectpublic void setDeathTime(ObjectReference ref, Word time_)
setDeathTime
in class TraceInterface
public void setLink(ObjectReference ref, ObjectReference link)
setLink
in class TraceInterface
public void updateTime(Word time_)
updateTime
in class TraceInterface
public Word getOID(ObjectReference ref)
getOID
in class TraceInterface
public Word getDeathTime(ObjectReference ref)
getDeathTime
in class TraceInterface
public ObjectReference getLink(ObjectReference ref)
getLink
in class TraceInterface
public Address getBootImageLink()
getBootImageLink
in class TraceInterface
public Word getOID()
getOID
in class TraceInterface
public void setOID(Word oid)
setOID
in class TraceInterface
public int getHeaderSize()
getHeaderSize
in class TraceInterface
public int getHeaderEndOffset()
getHeaderEndOffset
in class TraceInterface