ROSE
0.9.6a
|
Go to the source code of this file.
Classes | |
class | VirtualCFG::CFGNode |
A node in the control flow graph. More... | |
class | VirtualCFG::CFGEdge |
A control flow edge connecting two CFG nodes, with an edge condition to indicate edge types. More... | |
class | VirtualCFG::CFGPath |
class | VirtualCFG::InterestingNode |
class | VirtualCFG::InterestingEdge |
Namespaces | |
VirtualCFG | |
Constant Groups | |
VirtualCFG | |
Macros | |
#define | SGFUNCTIONCALLEXP_INTERPROCEDURAL_INDEX 2 |
#define | SGCONSTRUCTORINITIALIZER_INTERPROCEDURAL_INDEX 1 |
#define | SGFUNCTIONDEFINITION_INTERPROCEDURAL_INDEX 2 |
#define | SGFUNCTIONCALLEXP_INTERPROCEDURAL_INDEX 2 |
#define | SGCONSTRUCTORINITIALIZER_INTERPROCEDURAL_INDEX 1 |
#define | SGFUNCTIONDEFINITION_INTERPROCEDURAL_INDEX 2 |
Enumerations | |
enum | VirtualCFG::EdgeConditionKind { VirtualCFG::eckUnconditional, VirtualCFG::eckTrue, VirtualCFG::eckFalse, VirtualCFG::eckCaseLabel, VirtualCFG::eckDefault, VirtualCFG::eckDoConditionPassed, VirtualCFG::eckDoConditionFailed, VirtualCFG::eckForallIndicesInRange, VirtualCFG::eckForallIndicesNotInRange, VirtualCFG::eckComputedGotoCaseLabel, VirtualCFG::eckArithmeticIfLess, VirtualCFG::eckArithmeticIfEqual, VirtualCFG::eckArithmeticIfGreater, VirtualCFG::eckInterprocedural } |
The conditions attached to edges are marked to determine which conditions trigger control to flow along that edge (as opposed to other edges out of the same source node). More... | |
Functions | |
SgStatement * | isSgStatement (SgNode *node) |
const SgStatement * | isSgStatement (const SgNode *node) |
SgExpression * | isSgExpression (SgNode *node) |
const SgExpression * | isSgExpression (const SgNode *node) |
SgInitializedName * | isSgInitializedName (SgNode *node) |
const SgInitializedName * | isSgInitializedName (const SgNode *node) |
CFGPath | VirtualCFG::mergePaths (const CFGPath &hd, const CFGPath &tl) |
CFGPath | VirtualCFG::mergePathsReversed (const CFGPath &tl, const CFGPath &hd) |
CFGNode | VirtualCFG::cfgBeginningOfConstruct (SgNode *c) |
The first CFG node for a construct (before the construct starts to execute) More... | |
unsigned int | VirtualCFG::cfgIndexForEndWrapper (SgNode *n) |
CFGNode | VirtualCFG::cfgEndOfConstruct (SgNode *c) |
The last CFG node for a construct (after the entire construct has finished executing). More... | |
CFGNode | VirtualCFG::makeCfg (SgNode *start) |
Returns CFG node for just before start. More... | |
InterestingNode | VirtualCFG::makeInterestingCfg (SgNode *start) |
CFGNode | VirtualCFG::getCFGTargetOfFortranLabelSymbol (SgLabelSymbol *sym) |
CFGNode | VirtualCFG::getCFGTargetOfFortranLabelRef (SgLabelRefExp *lRef) |
template<class Node1T , class Node2T , class EdgeT > | |
void | VirtualCFG::makeEdge (Node1T from, Node2T to, std::vector< EdgeT > &result) |
Utility function to make CFG Edges. More... | |
template<class NodeT1 , class NodeT2 , class EdgeT > | |
void | makeEdge (NodeT1 from, NodeT2 to, std::vector< EdgeT > &result) |
Utility function to make CFG Edges. More... | |
Variables | |
int | abcd |
int | VirtualCFG::efgh |
#define SGFUNCTIONCALLEXP_INTERPROCEDURAL_INDEX 2 |
Definition at line 337 of file virtualCFG.h.
#define SGCONSTRUCTORINITIALIZER_INTERPROCEDURAL_INDEX 1 |
Definition at line 338 of file virtualCFG.h.
#define SGFUNCTIONDEFINITION_INTERPROCEDURAL_INDEX 2 |
Definition at line 339 of file virtualCFG.h.
#define SGFUNCTIONCALLEXP_INTERPROCEDURAL_INDEX 2 |
Definition at line 337 of file virtualCFG.h.
#define SGCONSTRUCTORINITIALIZER_INTERPROCEDURAL_INDEX 1 |
Definition at line 338 of file virtualCFG.h.
#define SGFUNCTIONDEFINITION_INTERPROCEDURAL_INDEX 2 |
Definition at line 339 of file virtualCFG.h.
SgStatement* isSgStatement | ( | SgNode * | node) |
const SgStatement* isSgStatement | ( | const SgNode * | node) |
SgExpression* isSgExpression | ( | SgNode * | node) |
const SgExpression* isSgExpression | ( | const SgNode * | node) |
SgInitializedName* isSgInitializedName | ( | SgNode * | node) |
const SgInitializedName* isSgInitializedName | ( | const SgNode * | node) |
void makeEdge | ( | NodeT1 | from, |
NodeT2 | to, | ||
std::vector< EdgeT > & | result | ||
) |
Utility function to make CFG Edges.
int abcd |