reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/ADT/SparseBitVector.h
  256   using ElementList = std::list<SparseBitVectorElement<ElementSize>>;
  260     BITWORD_SIZE = SparseBitVectorElement<ElementSize>::BITWORD_SIZE
  279         const_cast<SparseBitVector<ElementSize> *>(this)->Elements.begin();
  281         const_cast<SparseBitVector<ElementSize> *>(this)->Elements.end();
  322     const SparseBitVector<ElementSize> *BitVector = nullptr;
  334     typename SparseBitVectorElement<ElementSize>::BitWord Bits;
  345       BitNumber = Iter->index() * ElementSize;
  348       WordNumber = (BitNumber % ElementSize) / BITWORD_SIZE;
  365         int NextSetBitNumber = Iter->find_next(BitNumber % ElementSize) ;
  367         if (NextSetBitNumber == -1 || (BitNumber % ElementSize == 0)) {
  377           BitNumber = Iter->index() * ElementSize;
  380           WordNumber = (BitNumber % ElementSize) / BITWORD_SIZE;
  384           WordNumber = (NextSetBitNumber % ElementSize) / BITWORD_SIZE;
  387           BitNumber = Iter->index() * ElementSize;
  396     SparseBitVectorIterator(const SparseBitVector<ElementSize> *RHS,
  475     unsigned ElementIndex = Idx / ElementSize;
  483     return ElementIter->test(Idx % ElementSize);
  490     unsigned ElementIndex = Idx / ElementSize;
  498     ElementIter->reset(Idx % ElementSize);
  508     unsigned ElementIndex = Idx / ElementSize;
  528     ElementIter->set(Idx % ElementSize);
  681   bool intersectWithComplement(const SparseBitVector<ElementSize> *RHS) const {
  687   void intersectWithComplement(const SparseBitVector<ElementSize> &RHS1,
  688                                const SparseBitVector<ElementSize> &RHS2)
  733   void intersectWithComplement(const SparseBitVector<ElementSize> *RHS1,
  734                                const SparseBitVector<ElementSize> *RHS2) {
  738   bool intersects(const SparseBitVector<ElementSize> *RHS) const {
  743   bool intersects(const SparseBitVector<ElementSize> &RHS) const {
  772   bool contains(const SparseBitVector<ElementSize> &RHS) const {
  773     SparseBitVector<ElementSize> Result(*this);
  782     const SparseBitVectorElement<ElementSize> &First = *(Elements.begin());
  783     return (First.index() * ElementSize) + First.find_first();
  790     const SparseBitVectorElement<ElementSize> &Last = *(Elements.rbegin());
  791     return (Last.index() * ElementSize) + Last.find_last();