Lines Matching defs:Bits
30 static T getValue(const llvm::BitVector &Bits, unsigned Idx) {
33 val = T(val | ((Bits[(Idx << (BitNum-1)) + i] ? 1UL : 0UL) << i));
37 static void setValue(llvm::BitVector &Bits, unsigned Idx, T val) {
40 Bits[(Idx << (BitNum-1)) + i] = val & (T(1) << i);
47 static T getValue(const llvm::BitVector &Bits, unsigned Idx) {
50 val = T(val | ((Bits[(Idx << (BitNum-1)) + i] ? 1UL : 0UL) << i));
51 if (Bits[(Idx << (BitNum-1)) + BitNum-1])
56 static void setValue(llvm::BitVector &Bits, unsigned Idx, T val) {
59 Bits.set((Idx << (BitNum-1)) + BitNum-1);
63 Bits[(Idx << (BitNum-1)) + i] = val & (T(1) << i);
77 llvm::BitVector Bits;
90 Vec.setValue(Vec.Bits, Idx, val);
94 return Vec.getValue(Vec.Bits, Idx);
99 explicit PackedVector(unsigned size) : Bits(size << (BitNum-1)) { }
101 bool empty() const { return Bits.empty(); }
103 unsigned size() const { return Bits.size() >> (BitNum-1); }
105 void clear() { Bits.clear(); }
107 void resize(unsigned N) { Bits.resize(N << (BitNum-1)); }
109 void reserve(unsigned N) { Bits.reserve(N << (BitNum-1)); }
112 Bits.reset();
126 return base::getValue(Bits, Idx);
130 return Bits == RHS.Bits;
134 return Bits != RHS.Bits;
138 Bits = RHS.Bits;
143 Bits |= RHS.Bits;
148 Bits.swap(RHS.Bits);