ROSE 0.11.145.192
Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
DivAnalysis Class Reference

Description

Definition at line 209 of file divAnalysis.h.

Inheritance diagram for DivAnalysis:
Inheritance graph
[legend]
Collaboration diagram for DivAnalysis:
Collaboration graph
[legend]

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 &, const DataflowNode &, NodeState &, const std::vector< Lattice * > &)
 
boost::shared_ptr< IntraDFTransferVisitorgetTransferVisitor (const Function &func, const DataflowNode &n, NodeState &state, const std::vector< Lattice * > &dfInfo)
 
- Public Member Functions inherited from 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 IntraProceduralDataflow
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)
 
- Public Member Functions inherited from Analysis
 Analysis (bool(*f)(CFGNode)=defaultFilter)
 

Protected Attributes

LiveDeadVarsAnalysisldva
 
- Protected Attributes inherited from IntraProceduralAnalysis
InterProceduralAnalysisinterAnalysis
 

Static Protected Attributes

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

Additional Inherited Members

- Public Attributes inherited from IntraProceduralDataflow
std::set< Functionvisited
 
- Public Attributes inherited from Analysis
bool(* filter )(CFGNode cfgn)
 
- 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)
 

Constructor & Destructor Documentation

◆ DivAnalysis()

DivAnalysis::DivAnalysis ( LiveDeadVarsAnalysis ldva)
inline

Definition at line 220 of file divAnalysis.h.

Member Function Documentation

◆ genInitState()

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

◆ transfer()

bool DivAnalysis::transfer ( const Function ,
const DataflowNode ,
NodeState ,
const std::vector< Lattice * > &   
)
inlinevirtual

Implements IntraUnitDataflow.

Definition at line 241 of file divAnalysis.h.

◆ getTransferVisitor()

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

Member Data Documentation

◆ constVars

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

Definition at line 212 of file divAnalysis.h.

◆ constVars_init

bool DivAnalysis::constVars_init
staticprotected

Definition at line 213 of file divAnalysis.h.

◆ ldva

LiveDeadVarsAnalysis* DivAnalysis::ldva
protected

Definition at line 217 of file divAnalysis.h.


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