Lines Matching refs:src1

46  *  bitmap_and(dst, src1, src2, nbits)          *dst = *src1 & *src2
47 * bitmap_or(dst, src1, src2, nbits) *dst = *src1 | *src2
48 * bitmap_xor(dst, src1, src2, nbits) *dst = *src1 ^ *src2
49 * bitmap_andnot(dst, src1, src2, nbits) *dst = *src1 & ~(*src2)
51 * bitmap_equal(src1, src2, nbits) Are *src1 and *src2 equal?
52 * bitmap_intersects(src1, src2, nbits) Do *src1 and *src2 overlap?
53 * bitmap_subset(src1, src2, nbits) Is *src1 a subset of *src2?
57 * bitmap_weight_and(src1, src2, nbits) Hamming Weight of and'ed bitmap
58 * bitmap_weight_andnot(src1, src2, nbits) Hamming Weight of andnot'ed bitmap
152 bool __pure __bitmap_or_equal(const unsigned long *src1,
309 static inline bool bitmap_and(unsigned long *dst, const unsigned long *src1,
313 return (*dst = *src1 & *src2 & BITMAP_LAST_WORD_MASK(nbits)) != 0;
314 return __bitmap_and(dst, src1, src2, nbits);
317 static inline void bitmap_or(unsigned long *dst, const unsigned long *src1,
321 *dst = *src1 | *src2;
323 __bitmap_or(dst, src1, src2, nbits);
326 static inline void bitmap_xor(unsigned long *dst, const unsigned long *src1,
330 *dst = *src1 ^ *src2;
332 __bitmap_xor(dst, src1, src2, nbits);
335 static inline bool bitmap_andnot(unsigned long *dst, const unsigned long *src1,
339 return (*dst = *src1 & ~(*src2) & BITMAP_LAST_WORD_MASK(nbits)) != 0;
340 return __bitmap_andnot(dst, src1, src2, nbits);
359 static inline bool bitmap_equal(const unsigned long *src1,
363 return !((*src1 ^ *src2) & BITMAP_LAST_WORD_MASK(nbits));
366 return !memcmp(src1, src2, nbits / 8);
367 return __bitmap_equal(src1, src2, nbits);
372 * @src1: Pointer to bitmap 1
374 * @src3: Pointer to bitmap 3. Compare to the result of *@src1 | *@src2
377 * Returns: True if (*@src1 | *@src2) == *@src3, false otherwise
379 static inline bool bitmap_or_equal(const unsigned long *src1,
385 return __bitmap_or_equal(src1, src2, src3, nbits);
387 return !(((*src1 | *src2) ^ *src3) & BITMAP_LAST_WORD_MASK(nbits));
390 static inline bool bitmap_intersects(const unsigned long *src1,
395 return ((*src1 & *src2) & BITMAP_LAST_WORD_MASK(nbits)) != 0;
397 return __bitmap_intersects(src1, src2, nbits);
400 static inline bool bitmap_subset(const unsigned long *src1,
404 return ! ((*src1 & ~(*src2)) & BITMAP_LAST_WORD_MASK(nbits));
406 return __bitmap_subset(src1, src2, nbits);
434 unsigned long bitmap_weight_and(const unsigned long *src1,
438 return hweight_long(*src1 & *src2 & BITMAP_LAST_WORD_MASK(nbits));
439 return __bitmap_weight_and(src1, src2, nbits);
443 unsigned long bitmap_weight_andnot(const unsigned long *src1,
447 return hweight_long(*src1 & ~(*src2) & BITMAP_LAST_WORD_MASK(nbits));
448 return __bitmap_weight_andnot(src1, src2, nbits);