Lines Matching full:mask
20 unsigned long mask = (val & c->low_bits) + c->low_bits; in prep_zero_mask() local
21 return ~(mask | rhs); in prep_zero_mask()
24 #define create_zero_mask(mask) (mask) argument
26 static inline long find_zero(unsigned long mask) in find_zero() argument
30 if (mask >> 32) in find_zero()
31 mask >>= 32; in find_zero()
35 if (mask >> 16) in find_zero()
36 mask >>= 16; in find_zero()
39 return (mask >> 8) ? byte : byte + 1; in find_zero()
50 #define zero_bytemask(mask) (~1ul << __fls(mask)) argument
56 * The optimal byte mask counting is probably going to be something
71 * the simpler "(mask & ONEBYTES) * ONEBYTES >> 56"
73 * mask them first.
75 static inline long count_masked_bytes(unsigned long mask) in count_masked_bytes() argument
77 return mask*0x0001020304050608ul >> 56; in count_masked_bytes()
83 static inline long count_masked_bytes(long mask) in count_masked_bytes() argument
86 long a = (0x0ff0001+mask) >> 23; in count_masked_bytes()
88 return a & mask; in count_masked_bytes()
96 unsigned long mask = ((a - c->one_bits) & ~a) & c->high_bits; in has_zero() local
97 *bits = mask; in has_zero()
98 return mask; in has_zero()
112 /* The mask we created is directly usable as a bytemask */
113 #define zero_bytemask(mask) (mask) argument
115 static inline unsigned long find_zero(unsigned long mask) in find_zero() argument
117 return count_masked_bytes(mask); in find_zero()