ROSE 2.20.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
IntraBWDataflow Class Reference

Description

Definition at line 263 of file dataflow.h.

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

Public Member Functions

NodeState * initializeFunctionNodeState (const Function &func, NodeState *fState)
 
VirtualCFG::dataflow * getInitialWorklist (const Function &func, bool firstVisit, bool analyzeDueToCallers, const set< Function > &calleesUpdated, NodeState *fState)
 
virtual vector< Lattice * > getLatticeAnte (NodeState *state)
 
virtual vector< Lattice * > getLatticePost (NodeState *state)
 
void transferFunctionCall (const Function &func, const DataflowNode &n, NodeState *state)
 
vector< DataflowNode > getDescendants (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)
 
InterProceduralDataflow * getInterAnalysis () const
 
- Public Member Functions inherited from IntraProceduralAnalysis
void setInterAnalysis (InterProceduralAnalysis *interAnalysis)
 
- Public Member Functions inherited from Analysis
 Analysis (bool(*f)(CFGNode)=defaultFilter)
 

Additional Inherited Members

- Public Attributes inherited from IntraProceduralDataflow
std::set< Function > visited
 
- 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< DataflowNode > gatherDescendants (std::vector< DataflowEdge > edges, DataflowNode(DataflowEdge::*edgeFn)() const)
 
- Protected Attributes inherited from IntraProceduralAnalysis
InterProceduralAnalysis * interAnalysis
 

Constructor & Destructor Documentation

◆ IntraBWDataflow()

IntraBWDataflow::IntraBWDataflow ( )
inline

Definition at line 267 of file dataflow.h.

Member Function Documentation

◆ initializeFunctionNodeState()

NodeState * IntraBWDataflow::initializeFunctionNodeState ( const Function &  func,
NodeState *  fState 
)
virtual

◆ getInitialWorklist()

VirtualCFG::dataflow * IntraBWDataflow::getInitialWorklist ( const Function &  func,
bool  firstVisit,
bool  analyzeDueToCallers,
const set< Function > &  calleesUpdated,
NodeState *  fState 
)
virtual

◆ getLatticeAnte()

virtual vector< Lattice * > IntraBWDataflow::getLatticeAnte ( NodeState *  state)
virtual

◆ getLatticePost()

virtual vector< Lattice * > IntraBWDataflow::getLatticePost ( NodeState *  state)
virtual

◆ transferFunctionCall()

void IntraBWDataflow::transferFunctionCall ( const Function &  func,
const DataflowNode &  n,
NodeState *  state 
)
virtual

◆ getDescendants()

vector< DataflowNode > IntraBWDataflow::getDescendants ( const DataflowNode &  n)
virtual

◆ getUltimate()

DataflowNode IntraBWDataflow::getUltimate ( const Function &  func)
virtual

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