LLVM: llvm::ConstantRangeList Class Reference (original) (raw)

This class represents a list of constant ranges. More...

#include "[llvm/IR/ConstantRangeList.h](ConstantRangeList%5F8h%5Fsource.html)"

Public Member Functions
ConstantRangeList ()=default
ConstantRangeList (ArrayRef< ConstantRange > RangesRef)
ArrayRef< ConstantRange > rangesRef () const
SmallVectorImpl< ConstantRange >::iterator begin ()
SmallVectorImpl< ConstantRange >::iterator end ()
SmallVectorImpl< ConstantRange >::const_iterator begin () const
SmallVectorImpl< ConstantRange >::const_iterator end () const
ConstantRange getRange (unsigned i) const
bool empty () const
Return true if this list contains no members.
uint32_t getBitWidth () const
Get the bit width of this ConstantRangeList.
size_t size () const
Return the number of ranges in this ConstantRangeList.
LLVM_ABI void insert (const ConstantRange &NewRange)
Insert a new range to Ranges and keep the list ordered.
void insert (int64_t Lower, int64_t Upper)
LLVM_ABI void subtract (const ConstantRange &SubRange)
LLVM_ABI ConstantRangeList unionWith (const ConstantRangeList &CRL) const
Return the range list that results from the union of this ConstantRangeList with another ConstantRangeList, "CRL".
LLVM_ABI ConstantRangeList intersectWith (const ConstantRangeList &CRL) const
Return the range list that results from the intersection of this ConstantRangeList with another ConstantRangeList, "CRL".
bool operator== (const ConstantRangeList &CRL) const
Return true if this range list is equal to another range list.
bool operator!= (const ConstantRangeList &CRL) const
LLVM_ABI void print (raw_ostream &OS) const
Print out the ranges to a stream.
void dump () const

This class represents a list of constant ranges.

Definition at line 31 of file ConstantRangeList.h.

llvm::ConstantRangeList::ConstantRangeList ( ) default

ConstantRangeList() [2/2]

begin() [1/2]

begin() [2/2]

dump()

empty()

bool llvm::ConstantRangeList::empty ( ) const inline

end() [1/2]

end() [2/2]

getBitWidth()

uint32_t llvm::ConstantRangeList::getBitWidth ( ) const inline

getConstantRangeList()

getRange()

insert() [1/2]

Insert a new range to Ranges and keep the list ordered.

Definition at line 37 of file ConstantRangeList.cpp.

References assert(), llvm::SmallVectorTemplateCommon< T, typename >::begin(), empty(), llvm::SmallVectorTemplateCommon< T, typename >::end(), llvm::ConstantRange::getBitWidth(), getBitWidth(), llvm::ConstantRange::getLower(), llvm::ConstantRange::getUpper(), llvm::ConstantRange::isEmptySet(), llvm::ConstantRange::isFullSet(), llvm::lower_bound(), llvm::APInt::sle(), llvm::APInt::slt(), and llvm::APIntOps::smax().

Referenced by insert().

insert() [2/2]

void llvm::ConstantRangeList::insert ( int64_t Lower, int64_t Upper ) inline

intersectWith()

Return the range list that results from the intersection of this ConstantRangeList with another ConstantRangeList, "CRL".

Definition at line 197 of file ConstantRangeList.cpp.

References assert(), ConstantRangeList(), empty(), getBitWidth(), Range, size(), llvm::APIntOps::smax(), and llvm::APIntOps::smin().

Referenced by getIntersectedInitRangeList(), llvm::MDNode::getMostGenericNoaliasAddrspace(), and inferInitializes().

isOrderedRanges()

operator!=()

operator==()

Return true if this range list is equal to another range list.

Definition at line 88 of file ConstantRangeList.h.

References ConstantRangeList().

print()

void ConstantRangeList::print ( raw_ostream & OS ) const

rangesRef()

size()

size_t llvm::ConstantRangeList::size ( ) const inline

subtract()

Definition at line 86 of file ConstantRangeList.cpp.

References assert(), empty(), llvm::ConstantRange::getBitWidth(), getBitWidth(), llvm::ConstantRange::getLower(), llvm::ConstantRange::getUpper(), llvm::ConstantRange::isEmptySet(), llvm::ConstantRange::isFullSet(), Range, llvm::APInt::sge(), llvm::APInt::sle(), and llvm::APInt::slt().

Referenced by inferInitializes().

unionWith()


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