Polaris: RangeExpr.cc File Reference

RangeExpr.cc File Reference

Go to the source code of this file.

Functions

template ostream & operator<< (ostream &, const Set< RangeExpr > &)
bool is_empty_range (const Expression &e)
 Description: Return true if the given expression is omega or a range expression with bounds of -Inf and +Inf.
bool is_unbounded_range (const Expression &e)
 Description: Convert the given expression to a RangeExpr.
RangeExprconvert_to_range (Expression *expr)
 inline functions


Detailed Description

Definition in file RangeExpr.cc.


Function Documentation

template ostream& operator<< ostream &  ,
const Set< RangeExpr > & 
 

bool is_empty_range const Expression e  ) 
 

Description: Return true if the given expression is omega or a range expression with bounds of -Inf and +Inf.

Definition at line 17 of file RangeExpr.cc.

References e, RangeExpr::has_lb(), RangeExpr::has_ub(), INTEGER_CONSTANT_OP, RangeExpr::lb(), Expression::op(), RANGE_OP, RangeExpr::ub(), and Expression::value().

Referenced by _determine_relation(), _is_comparable(), _pull_ranges_out(), RangeComparator::compare(), intersect_ranges(), pull_ranges_out(), union_ranges(), and widen_range().

bool is_unbounded_range const Expression  ) 
 

Description: Convert the given expression to a RangeExpr.

That is, if expression E is not a range expression, return the range expression [E:E].

Definition at line 32 of file RangeExpr.cc.

References e, RangeExpr::has_lb(), RangeExpr::has_ub(), OMEGA_OP, Expression::op(), and RANGE_OP.

Referenced by _determine_relation().

RangeExpr* convert_to_range Expression expr  ) 
 

inline functions

Definition at line 51 of file RangeExpr.cc.

References RANGE_OP.

Referenced by _handle_omega_in_mod(), intersect_ranges(), narrow_range(), union_ranges(), and widen_range().

 © 1995-2005 University of Illinois, Urbana-Champaign. All rights reserved.  Fri Mar 25 23:06:26 2005