|
| FunctionDependenceGraph (ControlDependenceGraph *cdg, DataDependenceGraph *ddg, InterproceduralInfo *ii=NULL) |
|
virtual std::set
< DependenceNode * > | getSlice (DependenceNode *node) |
|
| FunctionDependenceGraph (ControlDependenceGraph *cdg, DataDependenceGraph *ddg, InterproceduralInfo *ii=NULL) |
|
virtual std::set
< DependenceNode * > | getSlice (DependenceNode *node) |
|
DependenceNode * | _importNode (DependenceNode *node) |
|
std::set< SgNode * > | slice (SgNode *node) |
|
DependenceNode * | _importNode (DependenceNode *node) |
|
std::set< SgNode * > | slice (SgNode *node) |
|
| DependenceGraph () |
|
virtual | ~DependenceGraph () |
|
void | debugCoutNodeList () |
|
const char * | getEdgeName (EdgeType type) |
|
DependenceNode * | createNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
DependenceNode * | createNode (SgNode *node) |
|
void | deleteNode (DependenceNode *node) |
|
DependenceNode * | getNode (SgNode *node) |
|
DependenceNode * | getNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
DependenceNode * | getExistingNode (SgNode *node) |
|
DependenceNode * | getExistingNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
InterproceduralInfo * | getInterprocedural () |
|
virtual void | establishEdge (DependenceNode *from, DependenceNode *to, EdgeType e=CONTROL) |
|
virtual void | removeEdge (DependenceNode *from, DependenceNode *to, EdgeType e=CONTROL) |
|
bool | edgeExists (DependenceNode *from, DependenceNode *to, EdgeType e) |
|
bool | hasOutgingEdge (DependenceNode *src, EdgeType compare) |
|
std::set< EdgeType > | edgeType (DependenceNode *from, DependenceNode *to) |
|
virtual void | writeDot (char *filename) |
|
| DependenceGraph () |
|
virtual | ~DependenceGraph () |
|
void | debugCoutNodeList () |
|
const char * | getEdgeName (EdgeType type) |
|
DependenceNode * | createNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
DependenceNode * | createNode (SgNode *node) |
|
void | deleteNode (DependenceNode *node) |
|
DependenceNode * | getNode (SgNode *node) |
|
DependenceNode * | getNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
DependenceNode * | getExistingNode (SgNode *node) |
|
DependenceNode * | getExistingNode (DependenceNode::NodeType type, SgNode *identifyingNode) |
|
InterproceduralInfo * | getInterprocedural () |
|
virtual void | establishEdge (DependenceNode *from, DependenceNode *to, EdgeType e=CONTROL) |
|
virtual void | removeEdge (DependenceNode *from, DependenceNode *to, EdgeType e=CONTROL) |
|
bool | edgeExists (DependenceNode *from, DependenceNode *to, EdgeType e) |
|
bool | hasOutgingEdge (DependenceNode *src, EdgeType compare) |
|
std::set< EdgeType > | edgeType (DependenceNode *from, DependenceNode *to) |
|
virtual void | writeDot (char *filename) |
|
virtual void | writeDotAndHighlightAllowedEdgesOnly (char *filename, std::set< DependenceGraph::EdgeType >) |
|
| ~SimpleDirectedGraph () |
|
std::set
< SimpleDirectedGraphNode * > | getNodes () |
| get all the nodes in the graph More...
|
|
virtual void | addNode (SimpleDirectedGraphNode *node) |
| Add a node to the graph. More...
|
|
virtual void | addLink (SimpleDirectedGraphNode *from, SimpleDirectedGraphNode *to) |
| Add a link to the graph between "from" and to "to". More...
|
|
bool | nodeExists (SimpleDirectedGraphNode *node) |
| Check if a node containing data is in the graph. More...
|
|
bool | linkExists (SimpleDirectedGraphNode *from, SimpleDirectedGraphNode *to) |
| Check if a dependence is in the graph. More...
|
|
void | printGraph () |
|
std::set
< SimpleDirectedGraphNode * > | getReachable (SimpleDirectedGraphNode *start, TraverseDirection dir) |
|
| SimpleDirectedGraph () |
|
virtual | ~SimpleDirectedGraph () |
|
std::set
< SimpleDirectedGraphNode * > | getNodes () |
| get all the nodes in the graph More...
|
|
virtual void | addNode (SimpleDirectedGraphNode *node) |
| Add a node to the graph. More...
|
|
virtual void | removeNode (SimpleDirectedGraphNode *node) |
|
virtual void | removeLink (SimpleDirectedGraphNode *from, SimpleDirectedGraphNode *to) |
| Remove a linkt between "from" and "to". More...
|
|
virtual void | addLink (SimpleDirectedGraphNode *from, SimpleDirectedGraphNode *to) |
| Add a link to the graph between "from" and to "to". More...
|
|
bool | nodeExists (SimpleDirectedGraphNode *node) |
| Check if a node containing data is in the graph. More...
|
|
bool | linkExists (SimpleDirectedGraphNode *from, SimpleDirectedGraphNode *to) |
| Check if a dependence is in the graph. More...
|
|
void | printGraph () |
|
std::set
< SimpleDirectedGraphNode * > | getReachable (SimpleDirectedGraphNode *start, TraverseDirection dir) |
|
|
enum | EdgeType {
CONTROL = 0x1,
CALL = 0x4,
CALL_RETURN = 0x5,
DATA = 0x2,
SUMMARY = 0x3,
PARAMETER_IN = 0x7,
PARAMETER_OUT = 0x8,
SYNTACTIC = 0xe,
DATA_HELPER = 0x9,
CONTROL_HELPER = 0xa,
GLOBALVAR_HELPER = 0xb,
COMPLETENESS_HELPER =0xc,
BELONGS_TO = 0xd,
DO_NOT_FOLLOW = 0x10,
CONTROL = 0x1,
CALL = 0x4,
CALL_RETURN = 0x5,
DATA = 0x2,
SUMMARY = 0x3,
PARAMETER_IN = 0x7,
PARAMETER_OUT = 0x8,
SYNTACTIC = 0xe,
DATA_HELPER = 0x9,
CONTROL_HELPER = 0xa,
GLOBALVAR_HELPER = 0xb,
COMPLETENESS_HELPER =0xc,
BELONGS_TO = 0xd,
DO_NOT_FOLLOW = 0x10
} |
|
enum | EdgeType {
CONTROL = 0x1,
CALL = 0x4,
CALL_RETURN = 0x5,
DATA = 0x2,
SUMMARY = 0x3,
PARAMETER_IN = 0x7,
PARAMETER_OUT = 0x8,
SYNTACTIC = 0xe,
DATA_HELPER = 0x9,
CONTROL_HELPER = 0xa,
GLOBALVAR_HELPER = 0xb,
COMPLETENESS_HELPER =0xc,
BELONGS_TO = 0xd,
DO_NOT_FOLLOW = 0x10,
CONTROL = 0x1,
CALL = 0x4,
CALL_RETURN = 0x5,
DATA = 0x2,
SUMMARY = 0x3,
PARAMETER_IN = 0x7,
PARAMETER_OUT = 0x8,
SYNTACTIC = 0xe,
DATA_HELPER = 0x9,
CONTROL_HELPER = 0xa,
GLOBALVAR_HELPER = 0xb,
COMPLETENESS_HELPER =0xc,
BELONGS_TO = 0xd,
DO_NOT_FOLLOW = 0x10
} |
|
static const char * | edgeNameArray [8] |
|
typedef std::pair
< DependenceNode
*, DependenceNode * > | Edge |
| *! InterproceduralInfo *_interprocedural; More...
|
|
typedef std::pair
< DependenceNode
*, DependenceNode * > | Edge |
| *! InterproceduralInfo *_interprocedural; More...
|
|
std::set< DependenceNode * > | _getReachable (std::set< DependenceNode * >start, int edgeTypesToFollow=0) |
|
void | _mergeGraph (DependenceGraph *graph) |
|
void | mergeGraph (DependenceGraph *graph) |
|
std::set< DependenceNode * > | _getReachable (std::set< DependenceNode * >start, int edgeTypesToFollow=0) |
|
void | _mergeGraph (DependenceGraph *graph) |
|
void | mergeGraph (DependenceGraph *graph) |
|
bool | debugme |
|
std::map< SgNode
*, DependenceNode * > | sgNodeToDepNodeMap |
| *! std::map < DependenceNode *, DependenceNode * >_depnode_map; More...
|
|
std::map
< DependenceNode::NodeType,
std::map< SgNode
*, DependenceNode * > > | nodeTypeToDepNodeMapMap |
|
std::map< EdgeType, std::set
< Edge > > | edgeTypeMap |
|
std::map< Edge, std::set
< EdgeType > > | edgeMap |
|
Definition at line 1179 of file DependenceGraph.h.