|
ROSE 0.11.145.354
|
Definition at line 23 of file interproceduralCFG.h.


Public Member Functions | |
| InterproceduralCFG (SgNode *node, bool is_filtered=false) | |
| SgNode * | getEntry () |
| SgIncidenceDirectedGraph * | getGraph () |
| SgGraphNode * | getGraphNode (CFGNode n) |
| virtual void | buildCFG () |
| Build CFG according to the 'is_filtered_' flag. | |
| virtual void | buildFullCFG () |
| Build CFG for debugging. | |
| virtual void | buildFilteredCFG () |
| Build filtered CFG which only contains interesting nodes. | |
Public Member Functions inherited from StaticCFG::CFG | |
| CFGNode | toCFGNode (SgGraphNode *node) |
| Turn a graph node into a CFGNode which is defined in VirtualCFG namespace. | |
| SgGraphNode * | toGraphNode (CFGNode &n) |
| Turn a CFG node into a GraphNode which is defined in VirtualCFG namespace. | |
| CFG (SgNode *node, bool is_filtered=false) | |
| The constructor building the CFG. | |
| SgIncidenceDirectedGraph * | getGraph () const |
| Get the pointer pointing to the graph used by static CFG. | |
| void | setStart (SgNode *node) |
| Set the start node for graph building. | |
| SgGraphNode * | getEntry () const |
| Get the entry node of the CFG. | |
| SgGraphNode * | getExit () const |
| Get the exit node of the CFG. | |
| bool | isFilteredCFG () const |
| void | setFiltered (bool flag) |
| std::vector< SgDirectedGraphEdge * > | getOutEdges (SgGraphNode *node) |
| std::vector< SgDirectedGraphEdge * > | getInEdges (SgGraphNode *node) |
| SgGraphNode * | cfgForBeginning (SgNode *node) |
| SgGraphNode * | cfgForEnd (SgNode *node) |
| void | cfgToDot (SgNode *node, const std::string &file_name) |
| Output the graph to a DOT file. | |
Public Attributes | |
| std::map< CFGNode, SgGraphNode * > | alNodes |
| CFGNode | neededStart |
Protected Member Functions | |
| virtual void | buildCFG (CFGNode n, std::map< CFGNode, SgGraphNode * > &all_nodes, std::set< CFGNode > &explored, ClassHierarchyWrapper *classHierarchy) |
Protected Member Functions inherited from StaticCFG::CFG | |
| template<class NodeT , class EdgeT > | |
| void | buildCFG (NodeT n, std::map< NodeT, SgGraphNode * > &all_nodes, std::set< NodeT > &explored) |
| void | clearNodesAndEdges () |
| Delete all nodes and edges in the graph and release memories. | |
| virtual void | processNodes (std::ostream &o, SgGraphNode *n, std::set< SgGraphNode * > &explored) |
| virtual void | printNodePlusEdges (std::ostream &o, SgGraphNode *node) |
| virtual void | printNode (std::ostream &o, SgGraphNode *node) |
| virtual void | printEdge (std::ostream &o, SgDirectedGraphEdge *edge, bool isInEdge) |
Additional Inherited Members | |
Static Public Member Functions inherited from StaticCFG::CFG | |
| static int | getIndex (SgGraphNode *node) |
| Get the index of a CFG node. | |
Protected Attributes inherited from StaticCFG::CFG | |
| SgIncidenceDirectedGraph * | graph_ |
| The graph data structure holding the CFG. | |
| std::map< CFGNode, SgGraphNode * > | all_nodes_ |
| A map from CFGNode in virtualCFG to node from staticCFG. | |
| SgNode * | start_ |
| The start node to begin CFG build. | |
| SgGraphNode * | entry_ |
| The entry node. | |
| SgGraphNode * | exit_ |
| The exit node. | |
| bool | is_filtered_ |
| A flag shows whether this CFG is filtered or not. | |
|
inline |
Definition at line 31 of file interproceduralCFG.h.
|
inline |
Definition at line 34 of file interproceduralCFG.h.
|
inline |
Definition at line 41 of file interproceduralCFG.h.
|
inline |
Definition at line 45 of file interproceduralCFG.h.
|
inline |
Definition at line 49 of file interproceduralCFG.h.
|
inlinevirtual |
Build CFG according to the 'is_filtered_' flag.
Reimplemented from StaticCFG::CFG.
Definition at line 53 of file interproceduralCFG.h.
|
virtual |
Build CFG for debugging.
Reimplemented from StaticCFG::CFG.
|
virtual |
Build filtered CFG which only contains interesting nodes.
Reimplemented from StaticCFG::CFG.
| std::map<CFGNode, SgGraphNode*> StaticCFG::InterproceduralCFG::alNodes |
Definition at line 57 of file interproceduralCFG.h.
| CFGNode StaticCFG::InterproceduralCFG::neededStart |
Definition at line 58 of file interproceduralCFG.h.