ROSE 0.11.145.147
|
This class collects all the defs and uses associated with each node in the traversed CFG.
Note that this does not compute reachability information; it just records each instance of a variable used or defined.
Definition at line 73 of file defsAndUsesUnfilteredCfg.h.
#include <midend/programAnalysis/ssaUnfilteredCfg/defsAndUsesUnfilteredCfg.h>
Public Types | |
typedef std::map< CFGNode, std::set< ssa_private::UniqueNameTraversal::VarName > > | CFGNodeToVarsMap |
Public Member Functions | |
virtual ChildUses | evaluateSynthesizedAttribute (SgNode *node, SynthesizedAttributesList attrs) |
Called to evaluate the synthesized attribute on every node. | |
Static Public Member Functions | |
static void | CollectDefsAndUses (SgNode *traversalRoot, CFGNodeToVarsMap &defs, std::map< SgNode *, std::set< SgVarRefExp * > > &uses) |
Call this method to collect defs and uses for a subtree. | |
typedef std::map<CFGNode, std::set<ssa_private::UniqueNameTraversal::VarName> > ssa_unfiltered_cfg::DefsAndUsesTraversal::CFGNodeToVarsMap |
Definition at line 77 of file defsAndUsesUnfilteredCfg.h.
|
static |
Call this method to collect defs and uses for a subtree.
The additional defs and uses discovered in the tree will be inserted in the passed data structures.
|
virtual |
Called to evaluate the synthesized attribute on every node.
This function will handle passing all variables that are defined and used by a given operation.
node | The node being evaluated. |
attr | The attributes from the child nodes. |
Implements AstBottomUpProcessing< ChildUses >.