|
ROSE 0.11.145.354
|
Definition at line 15 of file reachingDefUnfilteredCfg.h.
Public Types | |
| enum | Type { PHI_FUNCTION , ORIGINAL_DEF , EXPANDED_DEF , EXTERNAL_DEF } |
| typedef boost::shared_ptr< ReachingDef > | ReachingDefPtr |
Public Member Functions | |
| ReachingDef (const CFGNode &defNode, Type type) | |
| Creates a new reaching def. | |
| bool | isPhiFunction () const |
| Returns true if this is a phi function. | |
| const std::map< ReachingDefPtr, std::set< CFGEdge > > & | getJoinedDefs () const |
| If this is a join node (phi function), get the definitions merged. | |
| const CFGNode & | getDefinitionNode () const |
| If this is not a phi function, returns the actual reaching definition. | |
| std::set< CFGNode > | getActualDefinitions () const |
| Returns the actual reaching definitions at the current node, expanding all phi functions. | |
| int | getRenamingNumber () const |
| Get the renaming (SSA index) associated with this definition. | |
| bool | isOriginalDef () const |
| Returns true if this is an original definition (i.e. | |
| bool | operator== (const ReachingDef &other) const |
| Type | getType () const |
| void | setDefinitionNode (CFGNode defNode) |
| Set the definition node in the AST (only valid if this is not a phi function) | |
| void | addJoinedDef (ReachingDefPtr newDef, CFGEdge edge) |
| Add a new join definition (only valid for phi functions). | |
| void | setRenamingNumber (int n) |
| Set the renaming number (SSA index) of this def. | |
| void | setType (Type t) |
| typedef boost::shared_ptr<ReachingDef> ssa_unfiltered_cfg::ReachingDef::ReachingDefPtr |
Definition at line 36 of file reachingDefUnfilteredCfg.h.
Definition at line 19 of file reachingDefUnfilteredCfg.h.
| const std::map< ReachingDefPtr, std::set< CFGEdge > > & ssa_unfiltered_cfg::ReachingDef::getJoinedDefs | ( | ) | const |
If this is a join node (phi function), get the definitions merged.
Each definition is paired with the CFG node along which it flows.
| const CFGNode & ssa_unfiltered_cfg::ReachingDef::getDefinitionNode | ( | ) | const |
If this is not a phi function, returns the actual reaching definition.
If this is a phi function, returns the node where the phi function appears.
| int ssa_unfiltered_cfg::ReachingDef::getRenamingNumber | ( | ) | const |
Get the renaming (SSA index) associated with this definition.
0 is the first value, and numbers increase monotonically with program flow.
|
inline |
Returns true if this is an original definition (i.e.
if p.x is defined, p.x is an original defintion and p is an expanded definition)
Definition at line 82 of file reachingDefUnfilteredCfg.h.
References ORIGINAL_DEF.
|
inline |
Definition at line 89 of file reachingDefUnfilteredCfg.h.
|
inline |
Definition at line 105 of file reachingDefUnfilteredCfg.h.