OA::XAIF::AliasMapXAIF Class Reference

#include <AliasMapXAIF.hpp>

Inheritance diagram for OA::XAIF::AliasMapXAIF:

Inheritance graph
[legend]
Collaboration diagram for OA::XAIF::AliasMapXAIF:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 AliasMapXAIF (ProcHandle p)
 ~AliasMapXAIF ()
OA_ptr< MemRefHandleIteratorgetMemRefIter ()
 get iterator over all memory references that information is available for
int getMapSetId (MemRefHandle ref)
int findMapSet (MemRefHandle ref)
int findMapSet (OA_ptr< std::set< LocTuple > > pLocTupleSet)
OA_ptr< IdIteratorgetIdIterator ()
 get iterator over ids for this alias map
OA_ptr< LocTupleIteratorgetLocIterator (int setId)
 get iterator over all locations in a particular set
void mapLocTupleSet (OA_ptr< std::set< LocTuple > > ltSet, int setId)
 associate the given location set with the given mapSet
void mapMemRefToMapSet (MemRefHandle ref, int setId)
void output (IRHandlesIRInterface &ir)
 output for regression tests
void dump (std::ostream &os, OA_ptr< OA::IRHandlesIRInterface > ir)
 incomplete output of info for debugging

Static Public Attributes

static const int SET_ID_NONE = -1

Private Attributes

ProcHandle mProcHandle
std::map< int, OA_ptr
< std::set< LocTuple > > > 
mIdToLocTupleSetMap
std::map< int, MemRefSetmIdToMemRefSetMap
std::map< MemRefHandle, int > mMemRefToIdMap
std::map< MemRefHandle,
std::set< OA_ptr< MemRefExpr > > > 
mMemRefToMRESetMap


Detailed Description

Definition at line 157 of file AliasMapXAIF.hpp.


Constructor & Destructor Documentation

OA::XAIF::AliasMapXAIF::AliasMapXAIF ( ProcHandle  p  ) 

Definition at line 22 of file AliasMapXAIF.cpp.

OA::XAIF::AliasMapXAIF::~AliasMapXAIF (  )  [inline]

Definition at line 160 of file AliasMapXAIF.hpp.


Member Function Documentation

void OA::XAIF::AliasMapXAIF::dump ( std::ostream &  os,
OA_ptr< OA::IRHandlesIRInterface ir 
)

incomplete output of info for debugging

incomplete output of info for debugging, just lists map set Ids and associated set of locations and mapping of memrefs to the map set Ids

Definition at line 149 of file AliasMapXAIF.cpp.

References findMapSet(), OA::XAIF::LocRange::getEnd(), getIdIterator(), getLocIterator(), OA::XAIF::LocTuple::getLocRange(), getMemRefIter(), OA::XAIF::LocRange::getStart(), and OA::XAIF::LocTuple::isFull().

Here is the call graph for this function:

int OA::XAIF::AliasMapXAIF::findMapSet ( OA_ptr< std::set< LocTuple > >  pLocTupleSet  ) 

get id for an alias map set that contains an equivalent set of locations. SET_ID_NONE indicates that no equivalent location set was found in any AliasMap sets

Definition at line 62 of file AliasMapXAIF.cpp.

References mapLocTupleSet(), mIdToLocTupleSetMap, and SET_ID_NONE.

Here is the call graph for this function:

int OA::XAIF::AliasMapXAIF::findMapSet ( MemRefHandle  ref  ) 

get unique id for the alias map set for this memory reference SET_ID_NONE indicates that this memory reference doesn't map to any of the existing AliasMap sets

Definition at line 51 of file AliasMapXAIF.cpp.

References mMemRefToIdMap, and SET_ID_NONE.

Referenced by dump(), mapMemRefToMapSet(), and output().

OA_ptr< IdIterator > OA::XAIF::AliasMapXAIF::getIdIterator (  ) 

get iterator over ids for this alias map

Definition at line 75 of file AliasMapXAIF.cpp.

References mIdToLocTupleSetMap.

Referenced by dump(), and output().

OA_ptr< LocTupleIterator > OA::XAIF::AliasMapXAIF::getLocIterator ( int  setId  ) 

get iterator over all locations in a particular set

Definition at line 82 of file AliasMapXAIF.cpp.

References mIdToLocTupleSetMap.

Referenced by dump(), and output().

int OA::XAIF::AliasMapXAIF::getMapSetId ( MemRefHandle  ref  ) 

get unique id for the alias map set for this memory reference This method is NOT used for construction, and CANNOT return SET_ID_NONE

Definition at line 40 of file AliasMapXAIF.cpp.

References mMemRefToIdMap.

OA_ptr< MemRefHandleIterator > OA::XAIF::AliasMapXAIF::getMemRefIter (  ) 

get iterator over all memory references that information is available for

get iterator over all memory references that information is available for User must delete the iterator

Definition at line 25 of file AliasMapXAIF.cpp.

References mMemRefToIdMap.

Referenced by dump(), and output().

void OA::XAIF::AliasMapXAIF::mapLocTupleSet ( OA_ptr< std::set< LocTuple > >  ltSet,
int  setId 
)

associate the given location set with the given mapSet

Definition at line 89 of file AliasMapXAIF.cpp.

References mIdToLocTupleSetMap.

Referenced by findMapSet().

void OA::XAIF::AliasMapXAIF::mapMemRefToMapSet ( MemRefHandle  ref,
int  setId 
)

associate a MemRefHandle with the given mapSet, means that the MemRefHandle can access all of the locations in the mapSet

associate a MemRefHandle with the given mapset, means that the MemRefHandle can access all of the locations in the mapset, if only one full location then is a must access

Definition at line 95 of file AliasMapXAIF.cpp.

References findMapSet(), mIdToMemRefSetMap, mMemRefToIdMap, and SET_ID_NONE.

Here is the call graph for this function:

void OA::XAIF::AliasMapXAIF::output ( IRHandlesIRInterface ir  )  [virtual]

output for regression tests

Implements OA::Annotation.

Definition at line 107 of file AliasMapXAIF.cpp.

References findMapSet(), getIdIterator(), getLocIterator(), getMemRefIter(), OA::int2string(), mProcHandle, OA::XAIF::LocTuple::output(), and OA::Annotation::sOutBuild.

Here is the call graph for this function:


Member Data Documentation

std::map<int,OA_ptr<std::set<LocTuple> > > OA::XAIF::AliasMapXAIF::mIdToLocTupleSetMap [private]

Definition at line 219 of file AliasMapXAIF.hpp.

Referenced by findMapSet(), getIdIterator(), getLocIterator(), and mapLocTupleSet().

Definition at line 222 of file AliasMapXAIF.hpp.

Referenced by mapMemRefToMapSet().

Definition at line 225 of file AliasMapXAIF.hpp.

Referenced by findMapSet(), getMapSetId(), getMemRefIter(), and mapMemRefToMapSet().

Definition at line 229 of file AliasMapXAIF.hpp.

Definition at line 216 of file AliasMapXAIF.hpp.

Referenced by output().

const int OA::XAIF::AliasMapXAIF::SET_ID_NONE = -1 [static]

Definition at line 162 of file AliasMapXAIF.hpp.

Referenced by findMapSet(), and mapMemRefToMapSet().


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

Generated on Fri Jul 24 05:45:16 2009 for OpenADFortTk (extended to Open64) by  doxygen 1.5.7.1