public class CFGDOTVisualizer extends Object
| Constructor and Description |
|---|
CFGDOTVisualizer() |
| Modifier and Type | Method and Description |
|---|---|
protected static String |
prepareString(String s) |
static String |
visualize(ControlFlowGraph cfg,
Block entry)
Output a graph description in the DOT language, representing the control
flow graph starting at
entry. |
static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> |
visualize(ControlFlowGraph cfg,
Block entry,
@Nullable Analysis<A,S,T> analysis,
boolean verbose)
Output a graph description in the DOT language, representing the control
flow graph starting at
entry. |
protected static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> |
visualizeContent(Block bb,
@Nullable Analysis<A,S,T> analysis,
boolean verbose)
Produce a string representation of the contests of a basic block.
|
protected static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> |
visualizeNode(Node t,
@Nullable Analysis<A,S,T> analysis) |
protected static String |
visualizeType(Node t) |
public static String visualize(ControlFlowGraph cfg, Block entry)
entry. Does not output verbose information
or stores at the beginning of basic blocks.public static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> String visualize(ControlFlowGraph cfg, Block entry, @Nullable Analysis<A,S,T> analysis, boolean verbose)
entry.entry - The entry node of the control flow graph to be represented.analysis - An analysis containing information about the program
represented by the CFG. The information includes Store
s that are valid at the beginning of basic blocks reachable
from entry and per-node information for value
producing Nodes. Can also be null to
indicate that this information should not be output.verbose - Add more output to the CFG description.protected static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> String visualizeContent(Block bb, @Nullable Analysis<A,S,T> analysis, boolean verbose)
bb - Basic block to visualize.protected static <A extends AbstractValue<A>,S extends Store<S>,T extends TransferFunction<A,S>> String visualizeNode(Node t, @Nullable Analysis<A,S,T> analysis)