ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DominatorAnalysis Class Reference

#include <dominatorAnalysis.h>

Inheritance diagram for DominatorAnalysis:
Collaboration diagram for DominatorAnalysis:

Public Member Functions

 DominatorAnalysis (const set< DataflowNode > &allNodes, string indent="")
 
void genInitState (const Function &func, const DataflowNode &n, const NodeState &state, vector< Lattice * > &initLattices, vector< NodeFact * > &initFacts)
 
bool transfer (const Function &func, const DataflowNode &n, NodeState &state, const vector< Lattice * > &dfInfo)
 
- Public Member Functions inherited from IntraFWDataflow
 IntraFWDataflow ()
 
NodeStateinitializeFunctionNodeState (const Function &func, NodeState *fState)
 
VirtualCFG::dataflowgetInitialWorklist (const Function &func, bool firstVisit, bool analyzeDueToCallers, const set< Function > &calleesUpdated, NodeState *fState)
 
vector< Lattice * > getLatticeAnte (NodeState *state)
 
vector< Lattice * > getLatticePost (NodeState *state)
 
void transferFunctionCall (const Function &func, const DataflowNode &n, NodeState *state)
 
vector< DataflowNodegetDescendants (const DataflowNode &n)
 
DataflowNode getUltimate (const Function &func)
 
- Public Member Functions inherited from IntraUniDirectionalDataflow
bool runAnalysis (const Function &func, NodeState *state, bool analyzeDueToCallers, std::set< Function > calleesUpdated)
 
- Public Member Functions inherited from IntraUnitDataflow
virtual bool transfer (const Function &func, const DataflowNode &n, NodeState &state, const std::vector< Lattice * > &dfInfo)=0
 
virtual boost::shared_ptr
< IntraDFTransferVisitor
getTransferVisitor (const Function &func, const DataflowNode &n, NodeState &state, const std::vector< Lattice * > &dfInfo)
 
- Public Member Functions inherited from IntraProceduralDataflow
virtual void genInitState (const Function &func, const DataflowNode &n, const NodeState &state, std::vector< Lattice * > &initLattices, std::vector< NodeFact * > &initFacts)=0
 
void setInterAnalysis (InterProceduralDataflow *interDataflowAnalysis)
 
void setInterAnalysis (IntraProceduralDataflow *intraDFAnalysis)
 
bool runAnalysis (const Function &func, NodeState *state)
 
InterProceduralDataflowgetInterAnalysis () const
 
- Public Member Functions inherited from IntraProceduralAnalysis
void setInterAnalysis (InterProceduralAnalysis *interAnalysis)
 
virtual ~IntraProceduralAnalysis ()
 
- Public Member Functions inherited from Analysis
 Analysis (bool(*f)(CFGNode)=defaultFilter)
 

Protected Attributes

const set< DataflowNode > & allNodes
 

Additional Inherited Members

- Public Attributes inherited from IntraProceduralDataflow
std::set< Functionvisited
 
- Protected Member Functions inherited from IntraUniDirectionalDataflow
bool propagateStateToNextNode (const std::vector< Lattice * > &curNodeState, DataflowNode curDFNode, int nodeIndex, const std::vector< Lattice * > &nextNodeState, DataflowNode nextDFNode)
 
std::vector< DataflowNodegatherDescendants (std::vector< DataflowEdge > edges, DataflowNode(DataflowEdge::*edgeFn)() const)
 

Detailed Description

Definition at line 105 of file dominatorAnalysis.h.

Constructor & Destructor Documentation

DominatorAnalysis::DominatorAnalysis ( const set< DataflowNode > &  allNodes,
string  indent = "" 
)

Member Function Documentation

void DominatorAnalysis::genInitState ( const Function func,
const DataflowNode n,
const NodeState state,
vector< Lattice * > &  initLattices,
vector< NodeFact * > &  initFacts 
)
bool DominatorAnalysis::transfer ( const Function func,
const DataflowNode n,
NodeState state,
const vector< Lattice * > &  dfInfo 
)

Member Data Documentation

const set<DataflowNode>& DominatorAnalysis::allNodes
protected

Definition at line 108 of file dominatorAnalysis.h.


The documentation for this class was generated from the following file: