final class PendingRETInfo extends Object
When a JSR has been processed the processing of a RET is pending. Need to track which JSR was processed, and where the "return address" value is being held (i.e. is it on the operand stack, or in a local variable). The value starts on the top of the stack, but is usually quickly moved to a local variable.
Modifier and Type | Field and Description |
---|---|
int |
JSRBBNum |
short |
JSRNextBBNum
Block number of block after JSR
|
int |
JSRSubStartByteIndex |
int |
returnAddressLocation
index into map - represents either a local variable or a stack
position
|
private boolean |
updatedOnce
Sanity check the return address location is only updated once
|
Constructor and Description |
---|
PendingRETInfo(int JSRSubStartByteIndex,
int JSRBBNum,
int returnAddressLocation,
short JSRNextBBNum) |
PendingRETInfo(PendingRETInfo copyfrom) |
Modifier and Type | Method and Description |
---|---|
void |
updateReturnAddressLocation(int newLocation) |
public final int JSRSubStartByteIndex
public final int JSRBBNum
public int returnAddressLocation
private boolean updatedOnce
public final short JSRNextBBNum
PendingRETInfo(int JSRSubStartByteIndex, int JSRBBNum, int returnAddressLocation, short JSRNextBBNum)
PendingRETInfo(PendingRETInfo copyfrom)
public void updateReturnAddressLocation(int newLocation)