Package EDU.purdue.cs.bloat.tree
Class PhiJoinStmt
- java.lang.Object
-
- EDU.purdue.cs.bloat.tree.Node
-
- EDU.purdue.cs.bloat.tree.Stmt
-
- EDU.purdue.cs.bloat.tree.PhiStmt
-
- EDU.purdue.cs.bloat.tree.PhiJoinStmt
-
- All Implemented Interfaces:
Assign
public class PhiJoinStmt extends PhiStmt
PhiJoinStmt represents a phi-function inserted into a control flow graph during conversion of variables to static single-assignment form. A PhiJoinStmt at a point of control flow convergence.- See Also:
SSAConstructionInfo
-
-
Constructor Summary
Constructors Constructor Description PhiJoinStmt(VarExpr target, Block block)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intnumOperands()Returns the number of operands that this PhiJoinStmt has.ExproperandAt(Block block)Returns the occurrence of the variable with which this PhiJoinStmt is concerned (usually represented by a VarExpr) at a given block.java.util.Collectionoperands()Returns the operands of this PhiJoinStmt.java.util.Collectionpreds()Returns the predacessor nodes (in the CFG not dominator graph) of the block in which this PhiJoinStmt occurs.voidsetOperandAt(Block block, Expr expr)Set the operand to this PhiJoinStmt for a given Block to a given expression.voidvisit(TreeVisitor visitor)voidvisitForceChildren(TreeVisitor visitor)Visit the children of this node.-
Methods inherited from class EDU.purdue.cs.bloat.tree.Stmt
cleanupOnly
-
Methods inherited from class EDU.purdue.cs.bloat.tree.Node
block, cleanup, copyInto, hasParent, key, parent, replaceWith, replaceWith, setKey, setParent, setValueNumber, toString, valueNumber, visitChildren, visitOnly
-
-
-
-
Method Detail
-
setOperandAt
public void setOperandAt(Block block, Expr expr)
Set the operand to this PhiJoinStmt for a given Block to a given expression.- Parameters:
block-expr-
-
operandAt
public Expr operandAt(Block block)
Returns the occurrence of the variable with which this PhiJoinStmt is concerned (usually represented by a VarExpr) at a given block.- Parameters:
block- The block at which an occurrence of the variable occurs.- See Also:
VarExpr
-
numOperands
public int numOperands()
Returns the number of operands that this PhiJoinStmt has.
-
preds
public java.util.Collection preds()
Returns the predacessor nodes (in the CFG not dominator graph) of the block in which this PhiJoinStmt occurs.
-
operands
public java.util.Collection operands()
Returns the operands of this PhiJoinStmt. They are usually of type VarExpr.
-
visitForceChildren
public void visitForceChildren(TreeVisitor visitor)
Description copied from class:NodeVisit the children of this node. Not all Nodes will have children to visit.- Specified by:
visitForceChildrenin classNode
-
visit
public void visit(TreeVisitor visitor)
-
-