public class JNIExceptionDeliverer extends ExceptionDeliverer
Constructor and Description |
---|
JNIExceptionDeliverer() |
Modifier and Type | Method and Description |
---|---|
void |
deliverException(CompiledMethod compiledMethod,
Address catchBlockInstructionAddress,
Throwable exceptionObject,
AbstractRegisters registers)
Deliver exception, not possible for JNI methods
|
void |
unwindStackFrame(CompiledMethod compiledMethod,
AbstractRegisters registers)
Unwind registers/stack through JNI method
|
public JNIExceptionDeliverer()
public void deliverException(CompiledMethod compiledMethod, Address catchBlockInstructionAddress, Throwable exceptionObject, AbstractRegisters registers)
deliverException
in class ExceptionDeliverer
compiledMethod
- method whose catch block is to receive controlcatchBlockInstructionAddress
- instruction address at which
to begin execution of catch blockexceptionObject
- exception object to be passed as argument to
catch blockregisters
- registers to be loaded before passing control to
catch blockExceptionDeliverer.deliverException(CompiledMethod, Address, Throwable, AbstractRegisters)
public void unwindStackFrame(CompiledMethod compiledMethod, AbstractRegisters registers)
unwindStackFrame
in class ExceptionDeliverer
compiledMethod
- method whose stackframe is to be unwoundregisters
- thread state to be updated by restoring non-volatiles
and unwinding the stackframeExceptionDeliverer.unwindStackFrame(CompiledMethod, AbstractRegisters)