RangeMap Class Reference

#include <include/managed.h>

List of all members.


Detailed Description

Definition at line 243 of file managed.h.

Public Member Functions

void addRange (Exp *loc, Range &r)
void clear ()
bool empty ()
RangegetRange (Exp *loc)
bool hasRange (Exp *loc)
bool isSubset (RangeMap &other)
void killAllMemOfs ()
void print (std::ostream &os)
 RangeMap ()
ExpsubstInto (Exp *e, std::set< Exp *, lessExpStar > *only=NULL)
void unionwith (RangeMap &other)
void widenwith (RangeMap &other)

Protected Attributes

std::map< Exp *, Range, lessExpStarranges


Constructor & Destructor Documentation

RangeMap::RangeMap  )  [inline]
 

Definition at line 248 of file managed.h.


Member Function Documentation

void RangeMap::addRange Exp loc,
Range r
[inline]
 

Definition at line 249 of file managed.h.

References ranges.

Referenced by BranchStatement::limitOutputWithCondition(), and Assign::rangeAnalysis().

void RangeMap::clear  )  [inline]
 

Definition at line 257 of file managed.h.

References ranges.

Referenced by Statement::clearRanges().

bool RangeMap::empty  )  [inline]
 

Definition at line 259 of file managed.h.

References ranges.

Referenced by killAllMemOfs(), and Assignment::print().

Range & RangeMap::getRange Exp loc  ) 
 

Definition at line 810 of file managed.cpp.

References Range::MAX, Range::MIN, and ranges.

Referenced by BranchStatement::limitOutputWithCondition(), and BranchStatement::rangeAnalysis().

bool RangeMap::hasRange Exp loc  )  [inline]
 

Definition at line 250 of file managed.h.

References ranges.

Referenced by BranchStatement::limitOutputWithCondition(), and BranchStatement::rangeAnalysis().

bool RangeMap::isSubset RangeMap other  ) 
 

Definition at line 894 of file managed.cpp.

References DEBUG_RANGE_ANALYSIS, LOG, ranges, and VERBOSE.

Referenced by Statement::updateRanges().

void RangeMap::killAllMemOfs  ) 
 

Definition at line 878 of file managed.cpp.

References empty(), and ranges.

void RangeMap::print std::ostream &  os  ) 
 

Definition at line 840 of file managed.cpp.

References ranges.

Referenced by Assignment::print().

Exp * RangeMap::substInto Exp e,
std::set< Exp *, lessExpStar > *  only = NULL
 

Definition at line 851 of file managed.cpp.

References Exp::clone(), count, DEBUG_RANGE_ANALYSIS, LOG, opPlus, ranges, Exp::searchReplaceAll(), Exp::simplify(), Exp::simplifyArith(), and VERBOSE.

Referenced by CallStatement::rangeAnalysis(), and Assign::rangeAnalysis().

void RangeMap::unionwith RangeMap other  ) 
 

Definition at line 817 of file managed.cpp.

References ranges.

Referenced by JunctionStatement::rangeAnalysis().

void RangeMap::widenwith RangeMap other  ) 
 

Definition at line 828 of file managed.cpp.

References ranges.


Member Data Documentation

std::map<Exp*, Range, lessExpStar> RangeMap::ranges [protected]
 

Definition at line 245 of file managed.h.

Referenced by addRange(), clear(), empty(), getRange(), hasRange(), isSubset(), killAllMemOfs(), print(), substInto(), unionwith(), and widenwith().


The documentation for this class was generated from the following files:
Generated on Tue Sep 19 21:18:45 2006 for Boomerang by  doxygen 1.4.6