• Home
  • Raw
  • Download

Lines Matching refs:nbits

111 extern unsigned long *bitmap_alloc(unsigned int nbits, gfp_t flags);
112 extern unsigned long *bitmap_zalloc(unsigned int nbits, gfp_t flags);
119 extern int __bitmap_empty(const unsigned long *bitmap, unsigned int nbits);
120 extern int __bitmap_full(const unsigned long *bitmap, unsigned int nbits);
122 const unsigned long *bitmap2, unsigned int nbits);
126 unsigned int nbits);
128 unsigned int nbits);
130 unsigned int shift, unsigned int nbits);
132 unsigned int shift, unsigned int nbits);
134 const unsigned long *bitmap2, unsigned int nbits);
136 const unsigned long *bitmap2, unsigned int nbits);
138 const unsigned long *bitmap2, unsigned int nbits);
140 const unsigned long *bitmap2, unsigned int nbits);
142 const unsigned long *bitmap2, unsigned int nbits);
144 const unsigned long *bitmap2, unsigned int nbits);
145 extern int __bitmap_weight(const unsigned long *bitmap, unsigned int nbits);
180 unsigned long *dst, int nbits);
182 unsigned long *dst, int nbits);
186 unsigned long *dst, int nbits);
188 const unsigned long *old, const unsigned long *new, unsigned int nbits);
194 unsigned int sz, unsigned int nbits);
200 extern void bitmap_copy_le(unsigned long *dst, const unsigned long *src, unsigned int nbits);
204 … unsigned int bitmap_ord_to_pos(const unsigned long *bitmap, unsigned int ord, unsigned int nbits);
209 #define BITMAP_LAST_WORD_MASK(nbits) (~0UL >> (-(nbits) & (BITS_PER_LONG - 1))) argument
216 #define small_const_nbits(nbits) \ argument
217 (__builtin_constant_p(nbits) && (nbits) <= BITS_PER_LONG && (nbits) > 0)
219 static inline void bitmap_zero(unsigned long *dst, unsigned int nbits) in bitmap_zero() argument
221 unsigned int len = BITS_TO_LONGS(nbits) * sizeof(unsigned long); in bitmap_zero()
225 static inline void bitmap_fill(unsigned long *dst, unsigned int nbits) in bitmap_fill() argument
227 unsigned int len = BITS_TO_LONGS(nbits) * sizeof(unsigned long); in bitmap_fill()
232 unsigned int nbits) in bitmap_copy() argument
234 unsigned int len = BITS_TO_LONGS(nbits) * sizeof(unsigned long); in bitmap_copy()
242 const unsigned long *src, unsigned int nbits) in bitmap_copy_clear_tail() argument
244 bitmap_copy(dst, src, nbits); in bitmap_copy_clear_tail()
245 if (nbits % BITS_PER_LONG) in bitmap_copy_clear_tail()
246 dst[nbits / BITS_PER_LONG] &= BITMAP_LAST_WORD_MASK(nbits); in bitmap_copy_clear_tail()
255 unsigned int nbits);
257 unsigned int nbits);
259 #define bitmap_from_arr32(bitmap, buf, nbits) \ argument
261 (const unsigned long *) (buf), (nbits))
262 #define bitmap_to_arr32(buf, bitmap, nbits) \ argument
264 (const unsigned long *) (bitmap), (nbits))
268 const unsigned long *src2, unsigned int nbits) in bitmap_and() argument
270 if (small_const_nbits(nbits)) in bitmap_and()
271 return (*dst = *src1 & *src2 & BITMAP_LAST_WORD_MASK(nbits)) != 0; in bitmap_and()
272 return __bitmap_and(dst, src1, src2, nbits); in bitmap_and()
276 const unsigned long *src2, unsigned int nbits) in bitmap_or() argument
278 if (small_const_nbits(nbits)) in bitmap_or()
281 __bitmap_or(dst, src1, src2, nbits); in bitmap_or()
285 const unsigned long *src2, unsigned int nbits) in bitmap_xor() argument
287 if (small_const_nbits(nbits)) in bitmap_xor()
290 __bitmap_xor(dst, src1, src2, nbits); in bitmap_xor()
294 const unsigned long *src2, unsigned int nbits) in bitmap_andnot() argument
296 if (small_const_nbits(nbits)) in bitmap_andnot()
297 return (*dst = *src1 & ~(*src2) & BITMAP_LAST_WORD_MASK(nbits)) != 0; in bitmap_andnot()
298 return __bitmap_andnot(dst, src1, src2, nbits); in bitmap_andnot()
302 unsigned int nbits) in bitmap_complement() argument
304 if (small_const_nbits(nbits)) in bitmap_complement()
307 __bitmap_complement(dst, src, nbits); in bitmap_complement()
318 const unsigned long *src2, unsigned int nbits) in bitmap_equal() argument
320 if (small_const_nbits(nbits)) in bitmap_equal()
321 return !((*src1 ^ *src2) & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_equal()
322 if (__builtin_constant_p(nbits & BITMAP_MEM_MASK) && in bitmap_equal()
323 IS_ALIGNED(nbits, BITMAP_MEM_ALIGNMENT)) in bitmap_equal()
324 return !memcmp(src1, src2, nbits / 8); in bitmap_equal()
325 return __bitmap_equal(src1, src2, nbits); in bitmap_equal()
340 unsigned int nbits) in bitmap_or_equal() argument
342 if (!small_const_nbits(nbits)) in bitmap_or_equal()
343 return __bitmap_or_equal(src1, src2, src3, nbits); in bitmap_or_equal()
345 return !(((*src1 | *src2) ^ *src3) & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_or_equal()
349 const unsigned long *src2, unsigned int nbits) in bitmap_intersects() argument
351 if (small_const_nbits(nbits)) in bitmap_intersects()
352 return ((*src1 & *src2) & BITMAP_LAST_WORD_MASK(nbits)) != 0; in bitmap_intersects()
354 return __bitmap_intersects(src1, src2, nbits); in bitmap_intersects()
358 const unsigned long *src2, unsigned int nbits) in bitmap_subset() argument
360 if (small_const_nbits(nbits)) in bitmap_subset()
361 return ! ((*src1 & ~(*src2)) & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_subset()
363 return __bitmap_subset(src1, src2, nbits); in bitmap_subset()
366 static inline int bitmap_empty(const unsigned long *src, unsigned nbits) in bitmap_empty() argument
368 if (small_const_nbits(nbits)) in bitmap_empty()
369 return ! (*src & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_empty()
371 return find_first_bit(src, nbits) == nbits; in bitmap_empty()
374 static inline int bitmap_full(const unsigned long *src, unsigned int nbits) in bitmap_full() argument
376 if (small_const_nbits(nbits)) in bitmap_full()
377 return ! (~(*src) & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_full()
379 return find_first_zero_bit(src, nbits) == nbits; in bitmap_full()
382 static __always_inline int bitmap_weight(const unsigned long *src, unsigned int nbits) in bitmap_weight() argument
384 if (small_const_nbits(nbits)) in bitmap_weight()
385 return hweight_long(*src & BITMAP_LAST_WORD_MASK(nbits)); in bitmap_weight()
386 return __bitmap_weight(src, nbits); in bitmap_weight()
390 unsigned int nbits) in bitmap_set() argument
392 if (__builtin_constant_p(nbits) && nbits == 1) in bitmap_set()
396 __builtin_constant_p(nbits & BITMAP_MEM_MASK) && in bitmap_set()
397 IS_ALIGNED(nbits, BITMAP_MEM_ALIGNMENT)) in bitmap_set()
398 memset((char *)map + start / 8, 0xff, nbits / 8); in bitmap_set()
400 __bitmap_set(map, start, nbits); in bitmap_set()
404 unsigned int nbits) in bitmap_clear() argument
406 if (__builtin_constant_p(nbits) && nbits == 1) in bitmap_clear()
410 __builtin_constant_p(nbits & BITMAP_MEM_MASK) && in bitmap_clear()
411 IS_ALIGNED(nbits, BITMAP_MEM_ALIGNMENT)) in bitmap_clear()
412 memset((char *)map + start / 8, 0, nbits / 8); in bitmap_clear()
414 __bitmap_clear(map, start, nbits); in bitmap_clear()
418 unsigned int shift, unsigned int nbits) in bitmap_shift_right() argument
420 if (small_const_nbits(nbits)) in bitmap_shift_right()
421 *dst = (*src & BITMAP_LAST_WORD_MASK(nbits)) >> shift; in bitmap_shift_right()
423 __bitmap_shift_right(dst, src, shift, nbits); in bitmap_shift_right()
427 unsigned int shift, unsigned int nbits) in bitmap_shift_left() argument
429 if (small_const_nbits(nbits)) in bitmap_shift_left()
430 *dst = (*src << shift) & BITMAP_LAST_WORD_MASK(nbits); in bitmap_shift_left()
432 __bitmap_shift_left(dst, src, shift, nbits); in bitmap_shift_left()