|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.jikesrvm.compilers.common.CompiledMethod
org.jikesrvm.jni.JNICompiledMethod
public final class JNICompiledMethod
Information associated with artifical stackframe inserted at the transition from Jave to JNI Native C. Exception delivery should never see Native C frames, or the Java to C transition frame. Native C code is redispatched during exception handling to either process/handle and clear the exception or to return to Java leaving the exception pending. If it returns to the transition frame with a pending exception. JNI causes an athrow to happen as if it was called at the call site of the call to the native method.
| Field Summary | |
|---|---|
private static ExceptionDeliverer |
deliverer
Architecture specific deliverer of exceptions |
| Fields inherited from class org.jikesrvm.compilers.common.CompiledMethod |
|---|
BASELINE, cmid, compilationTime, instructions, JNI, method, NUM_COMPILER_TYPES, OPT, osrJTOCoffset, TRAP |
| Constructor Summary | |
|---|---|
JNICompiledMethod(int id,
RVMMethod m)
|
|
| Method Summary | |
|---|---|
int |
findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType)
Find "catch" block for a machine instruction of this method that might be guarded against specified class of exceptions by a "try" block . |
String |
getCompilerName()
|
int |
getCompilerType()
Identify the compiler that produced this compiled method. |
void |
getDynamicLink(DynamicLink dynamicLink,
Offset instructionOffset)
Fetch symbolic reference to a method that's called by one of this method's instructions. |
ExceptionDeliverer |
getExceptionDeliverer()
Get handler to deal with stack unwinding and exception delivery for this compiled method's stackframes. |
boolean |
isWithinUninterruptibleCode(Offset instructionOffset)
Return whether or not the given address (which is purported to be inside of the compiled method's code array) corresponds to an uninterruptible context. |
void |
printStackTrace(Offset instructionOffset,
PrintLN out)
Print this compiled method's portion of a stack trace |
void |
set(StackBrowser browser,
Offset instr)
Set the stack browser to the innermost logical stack frame of this method |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private static final ExceptionDeliverer deliverer
| Constructor Detail |
|---|
public JNICompiledMethod(int id,
RVMMethod m)
| Method Detail |
|---|
public int getCompilerType()
CompiledMethod
getCompilerType in class CompiledMethodpublic String getCompilerName()
getCompilerName in class CompiledMethodpublic ExceptionDeliverer getExceptionDeliverer()
CompiledMethod
getExceptionDeliverer in class CompiledMethod
public void getDynamicLink(DynamicLink dynamicLink,
Offset instructionOffset)
CompiledMethod
getDynamicLink in class CompiledMethoddynamicLink - place to put return informationinstructionOffset - offset of machine instruction from start of
this method, in bytes
Notes:
public boolean isWithinUninterruptibleCode(Offset instructionOffset)
CompiledMethod
isWithinUninterruptibleCode in class CompiledMethodinstructionOffset - of addr from start of instructions in bytes
public int findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType)
CompiledMethod
findCatchBlockForInstruction in class CompiledMethodinstructionOffset - offset of machine instruction from start of this method, in bytesexceptionType - type of exception being thrown - something like "NullPointerException"
public void printStackTrace(Offset instructionOffset,
PrintLN out)
CompiledMethod
printStackTrace in class CompiledMethodinstructionOffset - offset of machine instruction from start of methodout - the PrintLN to print the stack trace to.
public void set(StackBrowser browser,
Offset instr)
CompiledMethod
set in class CompiledMethod
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||