Constructor and Description |
---|
OptLinker() |
Modifier and Type | Method and Description |
---|---|
static Object |
new2DArray(int methodId,
int dim0,
int dim1,
int typeId) |
static Object |
newArrayArray(int methodId,
int[] dimensions,
int typeId) |
static void |
resolveDynamicLink(OptCompiledMethod cm,
Offset offset)
Given an opt compiler info and a machine code offset in that method's
instruction array, performs the dynamic linking required by that
instruction.
|
public OptLinker()
public static void resolveDynamicLink(OptCompiledMethod cm, Offset offset) throws NoClassDefFoundError
We do this by mapping back to the source RVMMethod and bytecode offset, then examining the bytecodes to see what field/method was being referenced, then calling TableBasedDynamicLinker to do the real work.
cm
- the opt compiled methodoffset
- machine code offsetNoClassDefFoundError
public static Object newArrayArray(int methodId, int[] dimensions, int typeId) throws NoClassDefFoundError, NegativeArraySizeException, OutOfMemoryError
public static Object new2DArray(int methodId, int dim0, int dim1, int typeId) throws NoClassDefFoundError, NegativeArraySizeException, OutOfMemoryError