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

#include <divAnalysis.h>

Inheritance diagram for DivAnalysis:
Collaboration diagram for DivAnalysis:

Public Member Functions

 DivAnalysis (LiveDeadVarsAnalysis *ldva)
 
void genInitState (const Function &func, const DataflowNode &n, const NodeState &state, std::vector< Lattice * > &initLattices, std::vector< NodeFact * > &initFacts)
 
bool transfer (const Function &func, const DataflowNode &n, NodeState &state, const std::vector< Lattice * > &dfInfo)
 
boost::shared_ptr
< IntraDFTransferVisitor
getTransferVisitor (const Function &func, const DataflowNode &n, NodeState &state, const std::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)
 

Protected Attributes

LiveDeadVarsAnalysisldva
 

Static Protected Attributes

static std::map< varID, Lattice * > constVars
 
static bool constVars_init
 

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 199 of file divAnalysis.h.

Constructor & Destructor Documentation

DivAnalysis::DivAnalysis ( LiveDeadVarsAnalysis ldva)
inline

Definition at line 210 of file divAnalysis.h.

References ldva.

Member Function Documentation

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

Implements IntraUnitDataflow.

Definition at line 231 of file divAnalysis.h.

boost::shared_ptr<IntraDFTransferVisitor> DivAnalysis::getTransferVisitor ( const Function func,
const DataflowNode n,
NodeState state,
const std::vector< Lattice * > &  dfInfo 
)
inlinevirtual

Reimplemented from IntraUnitDataflow.

Definition at line 233 of file divAnalysis.h.

Member Data Documentation

std::map<varID, Lattice*> DivAnalysis::constVars
staticprotected

Definition at line 202 of file divAnalysis.h.

bool DivAnalysis::constVars_init
staticprotected

Definition at line 203 of file divAnalysis.h.

LiveDeadVarsAnalysis* DivAnalysis::ldva
protected

Definition at line 207 of file divAnalysis.h.

Referenced by DivAnalysis().


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