OA::UnknownLoc Class Reference

#include <UnknownLoc.hpp>

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

List of all members.

Public Member Functions

 UnknownLoc ()
void acceptVisitor (LocationVisitor &pVisitor)
 UnknownLoc (UnknownLoc &other)
 copy constructor
 ~UnknownLoc ()
bool isaUnknown ()
OA_ptr< LocationgetBaseLoc ()
 An UnknownLoc returns itself as a base location.
bool isLocal ()
bool isUnique ()
bool operator< (Location &other)
bool operator== (Location &other)
bool mayOverlap (Location &other)
bool mustOverlap (Location &other)
bool subSetOf (Location &other)
void output (IRHandlesIRInterface &ir)
void dump (std::ostream &os)
void dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > pIR)
std::string toString (OA_ptr< IRHandlesIRInterface > pIR)
virtual int getOrder ()

Static Private Attributes

static const int sOrder = 100000000

Detailed Description

An unknown location may overlap with any location in the whole program.

Definition at line 24 of file UnknownLoc.hpp.


Constructor & Destructor Documentation

OA::UnknownLoc::UnknownLoc (  )  [inline]

Definition at line 26 of file UnknownLoc.hpp.

Referenced by getBaseLoc().

OA::UnknownLoc::UnknownLoc ( UnknownLoc other  )  [inline]

copy constructor

Definition at line 31 of file UnknownLoc.hpp.

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

Definition at line 33 of file UnknownLoc.hpp.


Member Function Documentation

void OA::UnknownLoc::acceptVisitor ( LocationVisitor pVisitor  )  [virtual]

Implements OA::Location.

Definition at line 21 of file UnknownLoc.cpp.

References OA::debug, OA_DEBUG_CTRL_MACRO, and OA::LocationVisitor::visitUnknownLoc().

Here is the call graph for this function:

void OA::UnknownLoc::dump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface pIR 
)

Definition at line 77 of file UnknownLoc.cpp.

References dump().

Here is the call graph for this function:

void OA::UnknownLoc::dump ( std::ostream &  os  ) 

Definition at line 71 of file UnknownLoc.cpp.

Referenced by dump().

OA_ptr< Location > OA::UnknownLoc::getBaseLoc (  )  [virtual]

An UnknownLoc returns itself as a base location.

Implements OA::Location.

Definition at line 27 of file UnknownLoc.cpp.

References UnknownLoc().

Here is the call graph for this function:

virtual int OA::UnknownLoc::getOrder (  )  [inline, virtual]

Reimplemented from OA::Location.

Definition at line 78 of file UnknownLoc.hpp.

References sOrder.

Referenced by operator<(), and operator==().

bool OA::UnknownLoc::isaUnknown (  )  [inline, virtual]

Reimplemented from OA::Location.

Definition at line 38 of file UnknownLoc.hpp.

bool OA::UnknownLoc::isLocal (  )  [inline, virtual]

true if the location block represents a local variable that is only visible within the current procedure or an unnamed variable that is allocated in the current procedure. If the current procedure is nested and has access to local variables of a parent procedure, those variables are not considered local for the current procedure.

Reimplemented from OA::Location.

Definition at line 46 of file UnknownLoc.hpp.

bool OA::UnknownLoc::isUnique (  )  [inline, virtual]

be because there could be multiple allocations at the same statement and they maybe lumped together depending on how much context is maintained. A LocBlock for an unnamed allocated memory block could be Unique if there is a different LocBlock for each possible context of the alloc. A local variable is always unique, allocated memory blocks may

Reimplemented from OA::Location.

Definition at line 47 of file UnknownLoc.hpp.

bool OA::UnknownLoc::mayOverlap ( Location other  )  [inline]

Definition at line 59 of file UnknownLoc.hpp.

bool OA::UnknownLoc::mustOverlap ( Location other  )  [inline]

Definition at line 61 of file UnknownLoc.hpp.

bool OA::UnknownLoc::operator< ( Location other  ) 

Locations are ordered first between Location subclasses based on their sOrder value. Then there is an ordering within each subclass.

Definition at line 40 of file UnknownLoc.cpp.

References OA::Location::getOrder(), and getOrder().

Here is the call graph for this function:

bool OA::UnknownLoc::operator== ( Location other  ) 

Definition at line 51 of file UnknownLoc.cpp.

References OA::Location::getOrder(), getOrder(), and OA::Location::isaUnknown().

Here is the call graph for this function:

void OA::UnknownLoc::output ( IRHandlesIRInterface ir  )  [virtual]

Implements OA::Annotation.

Definition at line 64 of file UnknownLoc.cpp.

References OA::Annotation::sOutBuild.

bool OA::UnknownLoc::subSetOf ( Location other  )  [inline]

Definition at line 63 of file UnknownLoc.hpp.

std::string OA::UnknownLoc::toString ( OA_ptr< IRHandlesIRInterface pIR  )  [virtual]

Implements OA::Location.

Definition at line 82 of file UnknownLoc.cpp.


Member Data Documentation

const int OA::UnknownLoc::sOrder = 100000000 [static, private]

Reimplemented from OA::Location.

Definition at line 81 of file UnknownLoc.hpp.

Referenced by getOrder().


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

Generated on Sat Oct 31 05:26:35 2009 for OpenAnalysis by  doxygen 1.6.1