14 #ifndef LLVM_ADT_DENSESET_H
15 #define LLVM_ADT_DENSESET_H
25 template<
typename ValueT,
typename ValueInfoT = DenseMapInfo<ValueT> >
31 explicit DenseSet(
unsigned NumInitBuckets = 0) : TheMap(NumInitBuckets) {}
34 unsigned size()
const {
return TheMap.
size(); }
45 bool count(
const ValueT &V)
const {
46 return TheMap.
count(V);
50 return TheMap.
erase(V);
54 TheMap.
swap(RHS.TheMap);
117 std::pair<iterator, bool>
insert(
const ValueT &V) {
118 return TheMap.
insert(std::make_pair(V, 0));
122 template<
typename InputIt>
bool operator!=(const Iterator &X) const
std::forward_iterator_tag iterator_category
MapTy::iterator::difference_type difference_type
DenseSet(const DenseSet &Other)
Iterator(const typename MapTy::iterator &i)
ConstIterator(const typename MapTy::const_iterator &i)
size_t getMemorySize() const
const ValueT & operator*()
bool erase(const ValueT &V)
size_t getMemorySize() const
ConstIterator const_iterator
ConstIterator & operator++()
bool operator!=(const ConstIterator &X) const
std::forward_iterator_tag iterator_category
iterator find(const ValueT &V)
void resize(size_t Size)
Grow the densemap so that it has at least Size buckets. Does not shrink.
const_iterator end() const
bool count(const KeyT &Val) const
count - Return true if the specified key is in the map.
const ValueT * operator->()
ptrdiff_t difference_type
void erase(ConstIterator CI)
void insert(InputIt I, InputIt E)
DenseSet(unsigned NumInitBuckets=0)
std::pair< iterator, bool > insert(const std::pair< KeyT, ValueT > &KV)
bool count(const ValueT &V) const
std::pair< iterator, bool > insert(const ValueT &V)
bool erase(const KeyT &Val)
bool operator==(const ConstIterator &X) const
DenseSet & operator=(const DenseSet &RHS)
const_iterator begin() const
MapTy::const_iterator::difference_type difference_type
bool LLVM_ATTRIBUTE_UNUSED_RESULT empty() const
bool operator==(const Iterator &X) const
iterator find(const KeyT &Val)
static RegisterPass< NVPTXAllocaHoisting > X("alloca-hoisting","Hoisting alloca instructions in non-entry ""blocks to the entry block")