ROSE
0.9.6a
|
#include <IntraProcAliasAnalysis.h>
Public Member Functions | |
unordered_map< SgNode *, SgGraphNode * > | getNodesMapping () |
Get the Mapping from SgNode to SgGraphNode. More... | |
CompactRepresentation () | |
SgIncidenceDirectedGraph * | getGraph () const |
Get the Graph. More... | |
unsigned long | getHash () const |
Get the Hash. More... | |
CompactRepresentation (const CompactRepresentation ©) | |
Copy constructor for CompactRepresentation. More... | |
CompactRepresentation & | operator= (const CompactRepresentation &p) |
Assignment operator overload for Compactrepresentation. More... | |
void | computeAliases (SgVariableSymbol *var, int derefLevel, vector< SgGraphNode * > &nodes) |
Given a VariableSymbol and Dereference level return list of aliases. More... | |
void | computeAliases (SgGraphNode *node, int derefLevel, vector< SgGraphNode * > &) |
Given a graph node and Dereference level return list of aliases. More... | |
void | addMustAliasRelation (const AliasRelationNode &left, const AliasRelationNode &right) |
Add a Must Relation to CompactRepresntation. More... | |
void | addMayAliasRelation (const AliasRelationNode &left, const AliasRelationNode &right) |
Add a May Relation to CompactRepresntation. More... | |
void | merge (const CompReprBase &that) |
Merge two CompactRepresentations. More... | |
bool | operator== (const CompactRepresentation &that) const |
== Operator overload for CompactRepresentation. Implemented using hashing for efficiency More... | |
bool | operator!= (const CompactRepresentation &that) const |
!= Operator overload for CompactRepresentation. Implemented using hashing for efficiency More... | |
void | toDot (const std::string &file_name) |
Prints CompactRepresentation to Dot File. More... | |
Public Member Functions inherited from CompReprBase | |
CompReprBase () | |
Private Member Functions | |
SgGraphNode * | getGraphNode (SgNode *node) |
Get Graph Node from SgNode. More... | |
void | merge (SgIncidenceDirectedGraph *thatGraph) |
Merge a graph with this compact representation. More... | |
void | updateHash (SgNode *from, SgNode *to) |
Update the Hash. More... | |
void | init () |
Initialize CompactRepresentation. More... | |
void | addEdge (SgGraphNode *g_from, SgGraphNode *g_to) |
add a Graph Edge More... | |
void | processNodes (std::ostream &o, SgGraphNode *n, std::set< SgGraphNode * > &explored) |
Process Nodes. More... | |
void | printNodePlusEdges (std::ostream &o, SgGraphNode *node) |
Print Nodes and Edges. More... | |
void | printNode (std::ostream &o, SgGraphNode *node) |
Print Nodes. More... | |
void | printEdge (std::ostream &o, SgDirectedGraphEdge *edge, bool isInEdge) |
Print Edges. More... | |
Private Attributes | |
unordered_map< SgNode *, SgGraphNode * > | all_nodes |
A Map to hold the SgNode to SgGraphNode mapping. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CompReprBase | |
~CompReprBase () | |
Protected Destructor to make sure the client code can't delete it. More... | |
Protected Attributes inherited from CompReprBase | |
SgIncidenceDirectedGraph * | graph |
unsigned long | hash |
Definition at line 114 of file IntraProcAliasAnalysis.h.
|
inline |
Definition at line 150 of file IntraProcAliasAnalysis.h.
References Dbg::init().
CompactRepresentation::CompactRepresentation | ( | const CompactRepresentation & | copy) |
Copy constructor for CompactRepresentation.
|
private |
Get Graph Node from SgNode.
|
private |
Merge a graph with this compact representation.
|
private |
Initialize CompactRepresentation.
|
private |
add a Graph Edge
|
private |
Process Nodes.
|
private |
Print Nodes and Edges.
|
private |
Print Nodes.
|
private |
Print Edges.
|
inline |
Get the Mapping from SgNode to SgGraphNode.
Definition at line 149 of file IntraProcAliasAnalysis.h.
|
inlinevirtual |
|
inlinevirtual |
CompactRepresentation& CompactRepresentation::operator= | ( | const CompactRepresentation & | p) |
Assignment operator overload for Compactrepresentation.
|
virtual |
Given a VariableSymbol and Dereference level return list of aliases.
Implements CompReprBase.
|
virtual |
Given a graph node and Dereference level return list of aliases.
Implements CompReprBase.
|
virtual |
Add a Must Relation to CompactRepresntation.
Implements CompReprBase.
|
virtual |
Add a May Relation to CompactRepresntation.
Implements CompReprBase.
|
virtual |
Merge two CompactRepresentations.
Implements CompReprBase.
bool CompactRepresentation::operator== | ( | const CompactRepresentation & | that) | const |
== Operator overload for CompactRepresentation. Implemented using hashing for efficiency
bool CompactRepresentation::operator!= | ( | const CompactRepresentation & | that) | const |
!= Operator overload for CompactRepresentation. Implemented using hashing for efficiency
|
virtual |
Prints CompactRepresentation to Dot File.
Implements CompReprBase.
|
private |
A Map to hold the SgNode to SgGraphNode mapping.
Definition at line 117 of file IntraProcAliasAnalysis.h.