public final class AstTranslator.IncipientCFG extends com.ibm.wala.util.graph.impl.SparseNumberedGraph<AstTranslator.PreBasicBlock>
AstTranslator.AstCFG| Modifier and Type | Class and Description |
|---|---|
protected class |
AstTranslator.IncipientCFG.Unwind |
| Constructor and Description |
|---|
IncipientCFG() |
| Modifier and Type | Method and Description |
|---|---|
void |
addEdge(AstTranslator.PreBasicBlock src,
AstTranslator.PreBasicBlock dst) |
void |
addInstruction(com.ibm.wala.ssa.SSAInstruction n) |
void |
addPreEdge(AstTranslator.PreBasicBlock src,
CAstNode dst,
boolean exception)
if dst is associated with a basic block b, add an edge from src to b.
|
void |
addPreEdge(CAstNode src,
CAstNode dst,
boolean exception) |
void |
addPreEdgeToExit(AstTranslator.PreBasicBlock src,
boolean exception) |
void |
addPreEdgeToExit(CAstNode src,
boolean exception) |
void |
addPreNode(CAstNode n) |
void |
addPreNode(CAstNode n,
AstTranslator.UnwindState context)
associate n with the current block, and update the current unwind state
|
AstTranslator.PreBasicBlock |
getBlock(CAstNode n) |
AstTranslator.PreBasicBlock |
getCurrentBlock() |
int |
getCurrentInstruction() |
CAstSourcePositionMap.Position[][] |
getOperandPositionMap() |
boolean |
isDeadBlock(AstTranslator.PreBasicBlock block) |
AstTranslator.PreBasicBlock |
newBlock(boolean fallThruFromPrior)
create a new basic block, and set it as the current block.
|
void |
noteOperands(int instruction,
CAstSourcePositionMap.Position... operands) |
void |
setCurrentBlockAsHandler() |
java.lang.String |
toString() |
getEdgeManager, getNodeManagergetMaxNumber, getNode, getNumber, getPredNodeNumbers, getSuccNodeNumbers, iterateNodesaddNode, containsNode, edgeString, getNumberOfNodes, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, iterator, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeNode, removeNodeAndEdges, removeOutgoingEdges, streamclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic int getCurrentInstruction()
public AstTranslator.PreBasicBlock getCurrentBlock()
public AstTranslator.PreBasicBlock newBlock(boolean fallThruFromPrior)
fallThruFromPrior - should a fall-through edge be added from the previous block (value
of currentBlock at entry)? if false, the newly created block is marked as a dead block,
as it has no incoming edges.public void setCurrentBlockAsHandler()
public void addPreNode(CAstNode n)
public void addPreNode(CAstNode n, AstTranslator.UnwindState context)
public void addPreEdge(AstTranslator.PreBasicBlock src, CAstNode dst, boolean exception)
public void addPreEdgeToExit(CAstNode src, boolean exception)
public void addPreEdgeToExit(AstTranslator.PreBasicBlock src, boolean exception)
public void addEdge(AstTranslator.PreBasicBlock src, AstTranslator.PreBasicBlock dst)
addEdge in interface com.ibm.wala.util.graph.EdgeManager<AstTranslator.PreBasicBlock>addEdge in class com.ibm.wala.util.graph.AbstractGraph<AstTranslator.PreBasicBlock>public boolean isDeadBlock(AstTranslator.PreBasicBlock block)
public AstTranslator.PreBasicBlock getBlock(CAstNode n)
public void noteOperands(int instruction,
CAstSourcePositionMap.Position... operands)
public void addInstruction(com.ibm.wala.ssa.SSAInstruction n)
public java.lang.String toString()
toString in class com.ibm.wala.util.graph.AbstractGraph<AstTranslator.PreBasicBlock>public CAstSourcePositionMap.Position[][] getOperandPositionMap()