The SSA graph (also called the value graph) represents the nesting of
expression in a control flow graph. Each node in the SSA graph represents an
expression. If the expression is a definition, the it is labeled with the
variable it defines. Each node has directed edges to the nodes representing
its operands.
SSAGraph is a representation of the definitions found in a CFG in
the following form: Each node in the graph is an expression that defines a
variable (a VarExpr, PhiStmt, or a
StackManipStmt). Edges in the graph point to the nodes whose
expressions define the operands of the expression in the source node.
This class is used primarily get the strongly connected components of the SSA
graph in support of value numbering and induction variable analysis.
Nate warns: Do not modify the CFG while using the SSA graph! The effects of
such modification are undefined and will probably lead to nasty things
occuring.
See Also: EDU.purdue.cs.bloat.trans.ValueNumbering See Also: ValueNumbering |