Package | Description |
---|---|
cfg | |
opt | |
util |
Modifier and Type | Field and Description |
---|---|
protected BasicBlock |
IfInst.falseTarg
Target block when condition is false (fall through target)
|
protected BasicBlock |
IfInst.trueTarg
Target block when condition is true (jump target)
|
Modifier and Type | Method and Description |
---|---|
static BasicBlock |
BasicBlock.getBlock(int id)
Returns basic block by ID.
|
BasicBlock |
IfInst.getFalseTarg()
Get the false target block
|
BasicBlock |
BasicBlock.getImmediateDominator()
Returns the immediate dominator of the block.
|
BasicBlock |
BasicBlock.getNthInEdge(int n)
Get nth incoming edge (basic block)
|
BasicBlock |
BasicBlock.getNthOutEdge(int n)
Get nth outgoing edge (basic block)
|
BasicBlock |
IfInst.getTrueTarg()
Get the true target block
|
Modifier and Type | Method and Description |
---|---|
java.util.Set<BasicBlock> |
BasicBlock.getDominanceFrontier()
Returns the set of BasicBlocks in the dominance frontier.
|
Modifier and Type | Method and Description |
---|---|
void |
BasicBlock.addInEdge(BasicBlock b)
Add an incoming edge from another control flow block
Also adds outgoing edge from parameter to this block
|
void |
BasicBlock.addOutEdge(BasicBlock b)
Add an outgoing edge to another control flow block
Also adds incoming edge from this block to parameter
|
boolean |
BasicBlock.containsInEdge(BasicBlock bb)
Does this block contain another block as an in edge?
|
boolean |
BasicBlock.containsOutEdge(BasicBlock bb)
Does this block contain another block as an out edge?
|
void |
BasicBlock.removeInEdge(BasicBlock b)
Remove an incoming edge to another control flow block
Also removes outgoing edge from parameter to this block
|
void |
BasicBlock.removeOutEdge(BasicBlock b)
Remove an outgoing edge to another control flow block
Also removes incoming edge from parameter to this block
|
void |
BasicBlock.replaceInEdge(BasicBlock remove,
BasicBlock add)
Replaces the incoming edge with an edge to the new control flock block.
|
void |
BasicBlock.replaceOutEdge(BasicBlock remove,
BasicBlock add)
Replaces the outgoing edge with an edge to the new control flock block.
|
void |
IfInst.setFalseTarg(BasicBlock falseTarg)
Get the false target block
|
void |
BasicBlock.setImmediateDominator(BasicBlock idom)
Sets the immediate dominator of the block.
|
void |
IfInst.setTrueTarg(BasicBlock trueTarg)
Set the true target block
|
int |
BasicBlock.whichPred(BasicBlock pred)
Returns the number of the incoming edge connecting block to this block,
or -1 if this block is not connected to pred.
|
Modifier and Type | Method and Description |
---|---|
void |
BasicBlock.setDominanceFrontier(java.util.Set<BasicBlock> df)
Sets the set of BasicBlocks in the dominance frontier.
|
Constructor and Description |
---|
IfInst(int type,
java.lang.String leftSource,
java.lang.String rightSource,
BasicBlock trueTarg,
BasicBlock falseTarg)
IfInst constructor
|
Modifier and Type | Method and Description |
---|---|
BasicBlock |
Optimization.transform()
Perform actual optimization on CFG.
|
Modifier and Type | Method and Description |
---|---|
static java.util.Set<java.lang.String> |
Optimizer.getFieldsUsedInCFG(BasicBlock entryBB)
Returns all field vars written to or read from in the CFG
starting at entryBB.
|
void |
Optimization.setEntryBlock(BasicBlock block)
Sets the current root of a CFG.
|
Modifier and Type | Method and Description |
---|---|
void |
DataflowDumper.setEntrySet(BasicBlock bb,
java.util.Set<ResultType> entrySet)
Records the entry set for the given basic block.
|
void |
DataflowDumper.setExitSet(BasicBlock bb,
java.util.Set<ResultType> exitSet)
Records the exit set for the given basic block.
|