OA::LinearityLocsVisitor Class Reference

#include <LinearityLocsVisitor.hpp>

Inheritance diagram for OA::LinearityLocsVisitor:
Inheritance graph
[legend]
Collaboration diagram for OA::LinearityLocsVisitor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 LinearityLocsVisitor (OA_ptr< Linearity::LinearityIRInterface > ir, OA_ptr< Linearity::Interface > rc, OA_ptr< Alias::Interface > alias, OA_ptr< DataFlow::ParamBindings > paramBind)
 ~LinearityLocsVisitor ()
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 getIsConst ()
OA_ptr
< Linearity::LinearityDepsSet
getDepsSet ()
 interface for results of visiting the expression tree

Private Attributes

OA_ptr
< Linearity::LinearityDepsSet
mDeps
OA_ptr
< Linearity::LinearityIRInterface
mIR
OA_ptr< Linearity::InterfacemLM
OA_ptr< Alias::InterfacemAlias
OA_ptr< DataFlow::ParamBindingsmParamBind
bool mIsConst

Detailed Description

Definition at line 36 of file LinearityLocsVisitor.hpp.


Constructor & Destructor Documentation

OA::LinearityLocsVisitor::LinearityLocsVisitor ( OA_ptr< Linearity::LinearityIRInterface ir,
OA_ptr< Linearity::Interface rc,
OA_ptr< Alias::Interface alias,
OA_ptr< DataFlow::ParamBindings paramBind 
)

Definition at line 22 of file LinearityLocsVisitor.cpp.

References mDeps, and mIsConst.

OA::LinearityLocsVisitor::~LinearityLocsVisitor (  )  [inline]

Definition at line 42 of file LinearityLocsVisitor.hpp.


Member Function Documentation

OA_ptr<Linearity::LinearityDepsSet> OA::LinearityLocsVisitor::getDepsSet (  )  [inline]

interface for results of visiting the expression tree

Definition at line 63 of file LinearityLocsVisitor.hpp.

References mDeps.

Referenced by OA::Linearity::ManagerLinearity::transfer(), and visitOpNode().

bool OA::LinearityLocsVisitor::getIsConst (  )  [inline]

Definition at line 60 of file LinearityLocsVisitor.hpp.

References mIsConst.

void OA::LinearityLocsVisitor::visitCallNode ( ExprTree::CallNode n  )  [virtual]
void OA::LinearityLocsVisitor::visitConstSymNode ( ExprTree::ConstSymNode n  )  [virtual]

Reimplemented from OA::ExprTreeVisitor.

Definition at line 295 of file LinearityLocsVisitor.cpp.

References mDeps, and mIsConst.

void OA::LinearityLocsVisitor::visitConstValNode ( ExprTree::ConstValNode n  )  [virtual]

Reimplemented from OA::ExprTreeVisitor.

Definition at line 302 of file LinearityLocsVisitor.cpp.

References mDeps, and mIsConst.

void OA::LinearityLocsVisitor::visitExprTreeAfter ( ExprTree  )  [inline, virtual]

called after root noded in the expression tree is visited

Implements OA::ExprTreeVisitor.

Definition at line 45 of file LinearityLocsVisitor.hpp.

void OA::LinearityLocsVisitor::visitExprTreeBefore ( ExprTree  )  [inline, virtual]

called before root noded in the expression tree is visited

Implements OA::ExprTreeVisitor.

Definition at line 44 of file LinearityLocsVisitor.hpp.

void OA::LinearityLocsVisitor::visitMemRefNode ( ExprTree::MemRefNode n  )  [virtual]

Reimplemented from OA::ExprTreeVisitor.

Definition at line 242 of file LinearityLocsVisitor.cpp.

References OA::debug, OA::ExprTree::MemRefNode::getHandle(), mAlias, mDeps, OA::Linearity::LinearityDepsSet::meet(), mIR, mIsConst, and mLM.

Here is the call graph for this function:

void OA::LinearityLocsVisitor::visitNode ( ExprTree::Node  )  [virtual]

if we don't know how to handle a node then the default action is to change the eval result to NULL

Implements OA::ExprTreeVisitor.

Definition at line 34 of file LinearityLocsVisitor.cpp.

References mDeps, and mIsConst.

void OA::LinearityLocsVisitor::visitOpNode ( ExprTree::OpNode n  )  [virtual]

Member Data Documentation

Definition at line 69 of file LinearityLocsVisitor.hpp.

Referenced by visitCallNode(), and visitMemRefNode().

Definition at line 67 of file LinearityLocsVisitor.hpp.

Referenced by visitCallNode(), visitMemRefNode(), and visitOpNode().

Definition at line 68 of file LinearityLocsVisitor.hpp.

Referenced by visitCallNode(), and visitMemRefNode().

Definition at line 70 of file LinearityLocsVisitor.hpp.

Referenced by visitCallNode().


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

Generated on Sat Oct 31 05:25:59 2009 for OpenAnalysis by  doxygen 1.6.1