#include <CallGraphDFProblem.hpp>

Definition at line 40 of file CallGraphDFProblem.hpp.
| OA::DataFlow::CallGraphDFProblem::CallGraphDFProblem | ( | ) | [inline] |
Definition at line 45 of file CallGraphDFProblem.hpp.
| virtual OA::DataFlow::CallGraphDFProblem::~CallGraphDFProblem | ( | ) | [inline, virtual] |
Definition at line 46 of file CallGraphDFProblem.hpp.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::atCallGraphEdge | ( | OA_ptr< DataFlowSet > | inSet, | |
| CallHandle | call, | |||
| ProcHandle | caller, | |||
| SymHandle | callee | |||
| ) | [pure virtual] |
use if callee is not defined in the call graph
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::atCallGraphEdge | ( | OA_ptr< DataFlowSet > | inSet, | |
| CallHandle | call, | |||
| ProcHandle | caller, | |||
| ProcHandle | callee | |||
| ) | [pure virtual] |
What the analysis does for a particular call use if both caller and callee are defined
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::atDGraphEdge().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::atCallGraphNode | ( | OA_ptr< DataFlowSet > | inSet, | |
| OA::ProcHandle | proc | |||
| ) | [pure virtual] |
What the analysis does for the particular procedure.
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::atDGraphNode().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::edgeToNode | ( | CallHandle | call, | |
| OA_ptr< DataFlow::DataFlowSet > | callDFSet, | |||
| ProcHandle | proc | |||
| ) | [pure virtual] |
translate results from caller edge to procedure node if top-down or from callee edge if bottom-up using call data flow set
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::atDGraphNode().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeBottom | ( | ) | [pure virtual] |
Return an initialized bottom set.
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeEdge | ( | CallHandle | call, | |
| ProcHandle | caller, | |||
| SymHandle | callee | |||
| ) | [pure virtual] |
Should generate an initial DataFlowSet for a call, called when callee is not defined in call graph and therefore doesn't have a procedure definition handle
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeEdge | ( | CallHandle | call, | |
| ProcHandle | caller, | |||
| ProcHandle | callee | |||
| ) | [pure virtual] |
Should generate an initial DataFlowSet, use if for a call if both caller and callee are defined
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::initialize().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeNode | ( | ProcHandle | proc | ) | [pure virtual] |
Should generate an initial DataFlowSet for a procedure Nodes that we don't have procedure definition for will get ProcHandle(0)
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::initialize().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeNodeIN | ( | OA_ptr< CallGraph::NodeInterface > | n | ) | [pure virtual] |
Should generate an in and out DataFlowSet for node.
Implemented in OA::SideEffect::ManagerInterSideEffectStandard.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeNodeOUT | ( | OA_ptr< CallGraph::NodeInterface > | n | ) | [pure virtual] |
Implemented in OA::SideEffect::ManagerInterSideEffectStandard.
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::initializeTop | ( | ) | [pure virtual] |
Return an initialized top set.
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::initialize(), and OA::DataFlow::CallGraphDFSolver::solve().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::meet | ( | OA_ptr< DataFlowSet > | set1, | |
| OA_ptr< DataFlowSet > | set2 | |||
| ) | [pure virtual] |
OK to modify set1 and return it as result, because solver only passes a tempSet in as set1
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::atDGraphNode().
| virtual OA_ptr<DataFlowSet> OA::DataFlow::CallGraphDFProblem::nodeToEdge | ( | ProcHandle | proc, | |
| OA_ptr< DataFlow::DataFlowSet > | procDFSet, | |||
| CallHandle | call | |||
| ) | [pure virtual] |
translate results from procedure node to callee edge if top-down or to caller edge if bottom-up using data-flow set at procedure node the proc could be ProcHandle(0) if the called procedure has not been defined
Implemented in OA::Activity::ManagerInterDep, and OA::SideEffect::ManagerInterSideEffectStandard.
Referenced by OA::DataFlow::CallGraphDFSolver::atDGraphEdge().
1.5.7.1