OA::Alias::FixedLocationVisitor Class Reference

#include <ManagerFIAlias.hpp>

Inheritance diagram for OA::Alias::FixedLocationVisitor:
Inheritance graph
[legend]
Collaboration diagram for OA::Alias::FixedLocationVisitor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FixedLocationVisitor (OA_ptr< AliasIRInterface > ir, ProcHandle proc, OA_ptr< Interface > aliasInterface)
 ~FixedLocationVisitor ()
OA_ptr< LocSetIteratorgetDirectRefLocIterator ()
void visitNamedRef (NamedRef &ref)
void visitUnnamedRef (UnnamedRef &ref)
void visitUnknownRef (UnknownRef &ref)
void visitAddressOf (AddressOf &ref)
void visitDeref (Deref &ref)
void visitFieldAccess (FieldAccess &ref)
void visitSubSetRef (SubSetRef &ref)

Private Member Functions

void notDirect ()

Private Attributes

OA_ptr< LocSetmDirectRefLocations
OA_ptr< Alias::InterfacemAliasInterface
bool mDirectRef
OA_ptr< LocationmLoc
OA_ptr< AliasIRInterfacemIR
ProcHandle mProc

Detailed Description

Visitor over memory reference expressions that determines a a fixed location for a memory reference based on the current set of alias results for possible sub MREs.

Definition at line 38 of file ManagerFIAlias.hpp.


Constructor & Destructor Documentation

OA::Alias::FixedLocationVisitor::FixedLocationVisitor ( OA_ptr< AliasIRInterface ir,
ProcHandle  proc,
OA_ptr< Interface aliasInterface 
) [inline]

Definition at line 40 of file ManagerFIAlias.hpp.

References mDirectRefLocations.

OA::Alias::FixedLocationVisitor::~FixedLocationVisitor (  )  [inline]

Definition at line 47 of file ManagerFIAlias.hpp.


Member Function Documentation

OA_ptr< LocSetIterator > OA::Alias::FixedLocationVisitor::getDirectRefLocIterator (  ) 
void OA::Alias::FixedLocationVisitor::notDirect (  )  [private]

Definition at line 53 of file ManagerFIAlias.cpp.

References mDirectRef, and mDirectRefLocations.

Referenced by visitAddressOf(), visitDeref(), visitNamedRef(), and visitUnknownRef().

void OA::Alias::FixedLocationVisitor::visitAddressOf ( AddressOf ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 60 of file ManagerFIAlias.cpp.

References notDirect().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitDeref ( Deref ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 48 of file ManagerFIAlias.cpp.

References notDirect().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitFieldAccess ( FieldAccess ref  )  [virtual]

Reimplemented from OA::MemRefExprVisitor.

Definition at line 118 of file ManagerFIAlias.cpp.

References OA::Alias::debug, OA::FieldAccess::getFieldName(), OA::RefOp::getMemRefExpr(), mDirectRef, mDirectRefLocations, mLoc, and OA::OA_ptr< T >::ptrEqual().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitNamedRef ( NamedRef ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 66 of file ManagerFIAlias.cpp.

References OA::Alias::debug, OA::NamedRef::getSymHandle(), mDirectRef, mDirectRefLocations, mIR, mLoc, mProc, notDirect(), and OA::OA_ptr< T >::ptrEqual().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitSubSetRef ( SubSetRef ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 100 of file ManagerFIAlias.cpp.

References OA::Alias::debug, OA::RefOp::getMemRefExpr(), mDirectRef, mDirectRefLocations, mLoc, and OA::OA_ptr< T >::ptrEqual().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitUnknownRef ( UnknownRef ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 43 of file ManagerFIAlias.cpp.

References notDirect().

Here is the call graph for this function:

void OA::Alias::FixedLocationVisitor::visitUnnamedRef ( UnnamedRef ref  )  [virtual]

Implements OA::MemRefExprVisitor.

Definition at line 89 of file ManagerFIAlias.cpp.

References OA::UnnamedRef::getExprHandle(), OA::UnnamedRef::isLocal(), mDirectRef, mDirectRefLocations, and mLoc.

Here is the call graph for this function:


Member Data Documentation

Definition at line 64 of file ManagerFIAlias.hpp.

Definition at line 70 of file ManagerFIAlias.hpp.

Referenced by visitNamedRef().

Definition at line 71 of file ManagerFIAlias.hpp.

Referenced by visitNamedRef().


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

Generated on Sat Oct 31 05:29:53 2009 for OpenAnalysis by  doxygen 1.6.1