Lines Matching refs:BitValue
32 struct BitValue;
105 struct BitTracker::BitValue { struct
144 BitValue(ValueType T = Top) : Type(T) {} in Type() argument
145 BitValue(bool B) : Type(B ? One : Zero) {} in BitValue() function
146 BitValue(unsigned Reg, uint16_t Pos) : Type(Ref), RefI(Reg, Pos) {} in BitValue() argument
148 bool operator== (const BitValue &V) const {
155 bool operator!= (const BitValue &V) const {
178 bool meet(const BitValue &V, const BitRef &Self) { in meet() argument
202 static BitValue ref(const BitValue &V);
204 static BitValue self(const BitRef &Self = BitRef());
214 friend raw_ostream &operator<<(raw_ostream &OS, const BitValue &BV); argument
219 inline BitTracker::BitValue
220 BitTracker::BitValue::ref(const BitValue &V) { in ref()
222 return BitValue(V.Type); in ref()
224 return BitValue(V.RefI.Reg, V.RefI.Pos); in ref()
229 inline BitTracker::BitValue
230 BitTracker::BitValue::self(const BitRef &Self) { in self()
231 return BitValue(Self.Reg, Self.Pos); in self()
255 const BitValue &operator[](uint16_t BitN) const {
259 BitValue &operator[](uint16_t BitN) {
268 RegisterCell &fill(uint16_t B, uint16_t E, const BitValue &V);
291 typedef SmallVector<BitValue, DefaultBitN> BitValueList;
315 RC.Bits[i] = BitValue::self(BitRef(Reg, i)); in self()
324 RC.Bits[i] = BitValue(BitValue::Top); in top()
334 RC[i] = BitValue::ref(C[i]); in ref()