org.jikesrvm.osr
Class ObjectHolder
java.lang.Object
org.jikesrvm.osr.ObjectHolder
- All Implemented Interfaces:
- SizeConstants
public class ObjectHolder
- extends Object
- implements SizeConstants
ObjectHolder helps the specialized prologue to load reference
get around of GC problem
Fields inherited from interface org.jikesrvm.SizeConstants |
BITS_IN_ADDRESS, BITS_IN_BOOLEAN, BITS_IN_BYTE, BITS_IN_CHAR, BITS_IN_DOUBLE, BITS_IN_EXTENT, BITS_IN_FLOAT, BITS_IN_INT, BITS_IN_LONG, BITS_IN_OFFSET, BITS_IN_PAGE, BITS_IN_SHORT, BITS_IN_WORD, BYTES_IN_ADDRESS, BYTES_IN_BOOLEAN, BYTES_IN_BYTE, BYTES_IN_CHAR, BYTES_IN_DOUBLE, BYTES_IN_EXTENT, BYTES_IN_FLOAT, BYTES_IN_INT, BYTES_IN_LONG, BYTES_IN_OFFSET, BYTES_IN_PAGE, BYTES_IN_SHORT, BYTES_IN_WORD, LOG_BITS_IN_ADDRESS, LOG_BITS_IN_BOOLEAN, LOG_BITS_IN_BYTE, LOG_BITS_IN_CHAR, LOG_BITS_IN_DOUBLE, LOG_BITS_IN_EXTENT, LOG_BITS_IN_FLOAT, LOG_BITS_IN_INT, LOG_BITS_IN_LONG, LOG_BITS_IN_OFFSET, LOG_BITS_IN_PAGE, LOG_BITS_IN_SHORT, LOG_BITS_IN_WORD, LOG_BYTES_IN_ADDRESS, LOG_BYTES_IN_BOOLEAN, LOG_BYTES_IN_BYTE, LOG_BYTES_IN_CHAR, LOG_BYTES_IN_DOUBLE, LOG_BYTES_IN_EXTENT, LOG_BYTES_IN_FLOAT, LOG_BYTES_IN_INT, LOG_BYTES_IN_LONG, LOG_BYTES_IN_OFFSET, LOG_BYTES_IN_PAGE, LOG_BYTES_IN_SHORT, LOG_BYTES_IN_WORD |
Method Summary |
static void |
boot()
|
static void |
cleanRefs(int h)
Clean objects. |
static Object |
getRefAt(int h,
int i)
Get the object handed in before, only called by specialized code. |
static int |
handinRefs(Object[] objs)
The VM scope descriptor extractor can hand in an object here |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
POOLSIZE
private static final int POOLSIZE
- See Also:
- Constant Field Values
refs
private static Object[][] refs
ObjectHolder
public ObjectHolder()
boot
public static void boot()
handinRefs
public static int handinRefs(Object[] objs)
- The VM scope descriptor extractor can hand in an object here
getRefAt
public static Object getRefAt(int h,
int i)
- Get the object handed in before, only called by specialized code.
cleanRefs
public static void cleanRefs(int h)
- Clean objects. This method is called by specialized bytecode prologue
Uses magic because it must be uninterruptible