|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jikesrvm.compilers.opt.bc2ir.BasicBlockLE
class BasicBlockLE
This class is used as a 'wrapper' to a basic block to hold information that is necessary only for IR generation.
Field Summary | |
---|---|
(package private) BasicBlock |
block
Basic block that this BBLE refers to. |
private static byte |
COLOR
|
(package private) BasicBlockLE |
fallThrough
The desired fallthrough (next in code order) BBLE (may be null ). |
private byte |
flags
Encoding of random boolean state |
private static byte |
GENERATED
|
(package private) HandlerBlockLE[] |
handlers
The exception handler BBLE's for this block (null if none) |
(package private) int |
high
Current end bytecode of this BBLE |
private static byte |
IN_CODE_ORDER
|
(package private) BasicBlockLE |
left
|
private static byte |
LOCAL_KNOWN
|
(package private) Operand[] |
localState
State of the local variables at the start of this basic block. |
(package private) int |
low
Start bytecode of this BBLE |
(package private) int |
max
Maximum possible bytecode of this BBLE (wrt exception ranges) |
(package private) BasicBlockLE |
parent
|
(package private) BasicBlockLE |
right
|
private static byte |
SELF_REGEN
|
private static byte |
STACK_KNOWN
|
(package private) OperandStack |
stackState
State of the stack at the start of this basic block. |
Constructor Summary | |
---|---|
protected |
BasicBlockLE(int loc)
|
(package private) |
BasicBlockLE(int loc,
InlineSequence position,
ControlFlowGraph cfg)
Create a new BBLE (and basic block) for the specified bytecode index. |
Method Summary | |
---|---|
(package private) void |
addHandler(HandlerBlockLE handler)
Add an exception handler BBLE to the handlers array. |
(package private) void |
clearGenerated()
|
(package private) void |
clearInCodeOrder()
|
(package private) void |
clearLocalKnown()
|
(package private) void |
clearSelfRegen()
|
(package private) void |
clearStackKnown()
|
(package private) void |
copyIntoLocalState(Operand[] _localState)
Save a shallow copy of the given local variable state into this. |
(package private) Operand[] |
copyLocalState()
Return a shallow copy of my local state. |
String |
genState()
Returns a string representation of state that determines if the BBLE is ready to be generated |
(package private) boolean |
isBlack()
|
(package private) boolean |
isGenerated()
|
(package private) boolean |
isInCodeOrder()
|
(package private) boolean |
isLocalKnown()
|
(package private) boolean |
isReadyToGenerate()
Is the BBLE ready to generate? |
(package private) boolean |
isRed()
|
(package private) boolean |
isSelfRegen()
|
(package private) boolean |
isStackKnown()
|
(package private) void |
setBlack()
|
(package private) void |
setGenerated()
|
(package private) void |
setInCodeOrder()
|
(package private) void |
setLocalKnown()
|
(package private) void |
setRed()
|
(package private) void |
setSelfRegen()
|
(package private) void |
setStackKnown()
|
String |
toString()
Returns a string representation of this BBLE. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
BasicBlockLE parent
BasicBlockLE left
BasicBlockLE right
final int low
int high
int max
BasicBlock block
OperandStack stackState
Operand[] localState
BasicBlockLE fallThrough
null
).
NOTE: we may not always end up actually falling through
(see BBSet.finalPass).
HandlerBlockLE[] handlers
private byte flags
private static final byte STACK_KNOWN
private static final byte LOCAL_KNOWN
private static final byte SELF_REGEN
private static final byte GENERATED
private static final byte COLOR
private static final byte IN_CODE_ORDER
Constructor Detail |
---|
BasicBlockLE(int loc, InlineSequence position, ControlFlowGraph cfg)
loc
- bytecode indexposition
- the inline sequencecfg
- ControlFlowGraph into which the block
will eventually be insertedprotected BasicBlockLE(int loc)
Method Detail |
---|
final void setStackKnown()
final void clearStackKnown()
final boolean isStackKnown()
final void setLocalKnown()
final void clearLocalKnown()
final boolean isLocalKnown()
final void setSelfRegen()
final void clearSelfRegen()
final boolean isSelfRegen()
final void setGenerated()
final void clearGenerated()
final boolean isGenerated()
final void setBlack()
final boolean isBlack()
final void setRed()
final boolean isRed()
final void setInCodeOrder()
final void clearInCodeOrder()
final boolean isInCodeOrder()
final boolean isReadyToGenerate()
final void copyIntoLocalState(Operand[] _localState)
_localState
- local variable state to savefinal Operand[] copyLocalState()
final void addHandler(HandlerBlockLE handler)
public String toString()
toString
in class Object
public String genState()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |