Lines Matching refs:BitWord
248 typedef unsigned long BitWord; typedef
249 using Allocator = AT<BitWord>;
251 enum { BITWORD_SIZE = (unsigned)sizeof(BitWord) * CHAR_BIT };
256 BitWord *Bits; // Actual bits.
275 BitWord *WordRef;
295 *WordRef |= BitWord(1) << BitPos;
297 *WordRef &= ~(BitWord(1) << BitPos);
302 return ((*WordRef) & (BitWord(1) << BitPos)) ? true : false;
333 std::memcpy(Bits, RHS.Bits, Capacity * sizeof(BitWord)); in BitVectorTmpl()
404 BitWord Copy = Bits[WordPos]; in find_next()
456 Bits[Idx / BITWORD_SIZE] |= BitWord(1) << (Idx % BITWORD_SIZE); in set()
469 BitWord EMask = 1UL << (E % BITWORD_SIZE); in set()
470 BitWord IMask = 1UL << (I % BITWORD_SIZE); in set()
471 BitWord Mask = EMask - IMask; in set()
476 BitWord PrefixMask = ~0UL << (I % BITWORD_SIZE); in set()
483 BitWord PostfixMask = (1UL << (E % BITWORD_SIZE)) - 1; in set()
496 Bits[Idx / BITWORD_SIZE] &= ~(BitWord(1) << (Idx % BITWORD_SIZE)); in reset()
509 BitWord EMask = 1UL << (E % BITWORD_SIZE); in reset()
510 BitWord IMask = 1UL << (I % BITWORD_SIZE); in reset()
511 BitWord Mask = EMask - IMask; in reset()
516 BitWord PrefixMask = ~0UL << (I % BITWORD_SIZE); in reset()
523 BitWord PostfixMask = (1UL << (E % BITWORD_SIZE)) - 1; in reset()
538 Bits[Idx / BITWORD_SIZE] ^= BitWord(1) << (Idx % BITWORD_SIZE); in flip()
550 BitWord Mask = BitWord(1) << (Idx % BITWORD_SIZE);
659 std::memcpy(Bits, RHS.Bits, RHSWords * sizeof(BitWord));
674 BitWord *NewBits = Alloc.allocate(Capacity);
675 std::memcpy(NewBits, RHS.Bits, Capacity * sizeof(BitWord));
755 BitWord ExtraBitMask = ~0UL << ExtraBits;
771 std::memcpy(Bits, NewBits, OldCapacity * sizeof(BitWord)); in grow()
778 void init_words(BitWord *B, unsigned NumWords, bool t) { in init_words()
779 memset(B, 0 - (int)t, NumWords * sizeof(BitWord)); in init_words()
789 BitWord BW = Bits[i]; in applyMask()
796 BW |= BitWord(M) << b; in applyMask()
798 BW &= ~(BitWord(M) << b); in applyMask()
807 Bits[i] |= BitWord(M) << b; in applyMask()
809 Bits[i] &= ~(BitWord(M) << b); in applyMask()