public final class MiscHeader extends Object
ObjectModel| Modifier and Type | Field and Description |
|---|---|
private static Offset |
MISC_HEADER_START |
(package private) static Offset |
OBJECT_DEATH_OFFSET |
(package private) static Offset |
OBJECT_LINK_OFFSET |
(package private) static Offset |
OBJECT_OID_OFFSET |
private static Word |
oid
The next object ID to be used.
|
private static Word |
prevAddress
The address of the last object allocated into the header.
|
(package private) static int |
REQUESTED_BITS
How many available bits does the misc header want to use?
|
private static Word |
time
The current "time" for the trace being generated.
|
| Constructor and Description |
|---|
MiscHeader() |
| Modifier and Type | Method and Description |
|---|---|
static void |
dumpHeader(Object ref)
For low level debugging of GC subsystem.
|
static Address |
getBootImageLink() |
static Word |
getDeathTime(Object object) |
static int |
getHeaderSize() |
static ObjectReference |
getLink(Object ref) |
static Word |
getOID() |
static Word |
getOID(Object object) |
static void |
initializeHeader(BootImageInterface bootImage,
Address ref,
TIB tib,
int size,
boolean isScalar)
Perform any required initialization of the MISC portion of the header.
|
static void |
initializeHeader(Object obj,
TIB tib,
int size,
boolean isScalar)
Perform any required initialization of the MISC portion of the header.
|
static void |
setDeathTime(Object object,
Word time_) |
static void |
setLink(Object object,
ObjectReference link) |
static void |
setOID(Word oid_) |
static void |
updateDeathTime(Object object) |
static void |
updateTime(Word time_) |
private static final Offset MISC_HEADER_START
static final Offset OBJECT_OID_OFFSET
static final Offset OBJECT_DEATH_OFFSET
static final Offset OBJECT_LINK_OFFSET
static final int REQUESTED_BITS
private static Word prevAddress
public MiscHeader()
public static void initializeHeader(Object obj, TIB tib, int size, boolean isScalar)
obj - the object ref to the storage to be initializedtib - the TIB of the instance being createdsize - the number of bytes allocated by the GC system for this object.isScalar - are we initializing a scalar (true) or array (false) object?public static void initializeHeader(BootImageInterface bootImage, Address ref, TIB tib, int size, boolean isScalar)
bootImage - the bootimage being writtenref - the object ref to the storage to be initializedtib - the TIB of the instance being createdsize - the number of bytes allocated by the GC system for this object.isScalar - are we initializing a scalar (true) or array (false) object?public static void updateDeathTime(Object object)
public static void setDeathTime(Object object, Word time_)
public static void setLink(Object object, ObjectReference link)
public static void updateTime(Word time_)
public static Word getDeathTime(Object object)
public static ObjectReference getLink(Object ref)
public static Address getBootImageLink()
public static int getHeaderSize()
public static void dumpHeader(Object ref)
ref - the object reference whose header should be dumped