Lines Matching full:mask
12 /// A lane mask is a bitmask representing the covering of a register with
17 /// physical registers. The individual bits in a lane mask can't be assigned
47 explicit constexpr LaneBitmask(Type V) : Mask(V) {} in LaneBitmask()
49 constexpr bool operator== (LaneBitmask M) const { return Mask == M.Mask; }
50 constexpr bool operator!= (LaneBitmask M) const { return Mask != M.Mask; }
51 constexpr bool operator< (LaneBitmask M) const { return Mask < M.Mask; }
52 constexpr bool none() const { return Mask == 0; } in none()
53 constexpr bool any() const { return Mask != 0; } in any()
54 constexpr bool all() const { return ~Mask == 0; } in all()
57 return LaneBitmask(~Mask);
60 return LaneBitmask(Mask | M.Mask);
63 return LaneBitmask(Mask & M.Mask);
66 Mask |= M.Mask;
70 Mask &= M.Mask;
74 constexpr Type getAsInteger() const { return Mask; } in getAsInteger()
76 unsigned getNumLanes() const { return llvm::popcount(Mask); } in getNumLanes()
78 return Log2_64(Mask); in getHighestLane()
88 Type Mask = 0;