#include <MemRefsVisitor.hpp>


Public Member Functions | |
| MemRefsVisitor () | |
| ~MemRefsVisitor () | |
| void | visitExprTreeBefore (ExprTree &) |
| called before root noded in the expression tree is visited | |
| void | visitExprTreeAfter (ExprTree &) |
| called after root noded in the expression tree is visited | |
| void | visitNode (ExprTree::Node &) |
| void | visitOpNode (ExprTree::OpNode &n) |
| void | visitCallNode (ExprTree::CallNode &n) |
| void | visitMemRefNode (ExprTree::MemRefNode &n) |
| void | visitConstSymNode (ExprTree::ConstSymNode &n) |
| void | visitConstValNode (ExprTree::ConstValNode &n) |
| bool | hasMemRef () |
| interface for results of visiting the expression tree | |
| OA_ptr< MemRefHandleIterator > | getMemRefsIterator () |
Private Attributes | |
| bool | mHasMemRef |
| OA_ptr< std::set< MemRefHandle > > | mMemRefSet |
concrete ExprTree visitor that determines which memory references are in an expression.
Definition at line 47 of file MemRefsVisitor.hpp.
| OA::MemRefsVisitor::MemRefsVisitor | ( | ) | [inline] |
Definition at line 49 of file MemRefsVisitor.hpp.
| OA::MemRefsVisitor::~MemRefsVisitor | ( | ) | [inline] |
Definition at line 50 of file MemRefsVisitor.hpp.
| OA_ptr<MemRefHandleIterator> OA::MemRefsVisitor::getMemRefsIterator | ( | ) | [inline] |
Definition at line 71 of file MemRefsVisitor.hpp.
References mMemRefSet.
Referenced by OA::DataFlow::LocDFSet::calleeToCallerTransitive(), OA::DataFlow::LocDFSet::callerToCalleeTransitive(), and OA::LinearityLocsVisitor::visitCallNode().
| bool OA::MemRefsVisitor::hasMemRef | ( | ) | [inline] |
interface for results of visiting the expression tree
Definition at line 70 of file MemRefsVisitor.hpp.
References mHasMemRef.
Referenced by OA::DataFlow::LocDFSet::calleeToCallerTransitive(), OA::DataFlow::LocDFSet::callerToCalleeTransitive(), and OA::LinearityLocsVisitor::visitCallNode().
| void OA::MemRefsVisitor::visitCallNode | ( | ExprTree::CallNode & | n | ) | [virtual] |
Reimplemented from OA::ExprTreeVisitor.
Definition at line 40 of file MemRefsVisitor.cpp.
| void OA::MemRefsVisitor::visitConstSymNode | ( | ExprTree::ConstSymNode & | n | ) | [virtual] |
Reimplemented from OA::ExprTreeVisitor.
Definition at line 53 of file MemRefsVisitor.cpp.
| void OA::MemRefsVisitor::visitConstValNode | ( | ExprTree::ConstValNode & | n | ) | [virtual] |
Reimplemented from OA::ExprTreeVisitor.
Definition at line 58 of file MemRefsVisitor.cpp.
| void OA::MemRefsVisitor::visitExprTreeAfter | ( | ExprTree & | ) | [inline, virtual] |
called after root noded in the expression tree is visited
Implements OA::ExprTreeVisitor.
Definition at line 54 of file MemRefsVisitor.hpp.
| void OA::MemRefsVisitor::visitExprTreeBefore | ( | ExprTree & | ) | [inline, virtual] |
called before root noded in the expression tree is visited
Implements OA::ExprTreeVisitor.
Definition at line 52 of file MemRefsVisitor.hpp.
References mMemRefSet.
| void OA::MemRefsVisitor::visitMemRefNode | ( | ExprTree::MemRefNode & | n | ) | [virtual] |
Reimplemented from OA::ExprTreeVisitor.
Definition at line 47 of file MemRefsVisitor.cpp.
References OA::ExprTree::MemRefNode::getHandle(), mHasMemRef, and mMemRefSet.

| void OA::MemRefsVisitor::visitNode | ( | ExprTree::Node & | ) | [virtual] |
if we don't know how to handle a node then need to assert because there is no default conservative action for this visitor
Implements OA::ExprTreeVisitor.
Definition at line 23 of file MemRefsVisitor.cpp.
| void OA::MemRefsVisitor::visitOpNode | ( | ExprTree::OpNode & | n | ) | [virtual] |
Reimplemented from OA::ExprTreeVisitor.
Definition at line 28 of file MemRefsVisitor.cpp.
References OA::ExprTree::ChildNodesIterator::current(), and OA::Tree::ChildNodesIterator::isValid().

bool OA::MemRefsVisitor::mHasMemRef [private] |
Definition at line 78 of file MemRefsVisitor.hpp.
Referenced by hasMemRef(), and visitMemRefNode().
OA_ptr<std::set<MemRefHandle> > OA::MemRefsVisitor::mMemRefSet [private] |
Definition at line 79 of file MemRefsVisitor.hpp.
Referenced by getMemRefsIterator(), visitExprTreeBefore(), and visitMemRefNode().
1.7.1