31 lines · 699 B · C
RawDownload
/* * From lib/bitmap.c * Helper functions for bitmap.h. * * This source code is licensed under the GNU General Public License, * Version 2.  See the file COPYING for more details. */#include <linux/bitmap.h> int __bitmap_weight(const unsigned long *bitmap, int bits){	int k, w = 0, lim = bits/BITS_PER_LONG; 	for (k = 0; k < lim; k++)		w += hweight_long(bitmap[k]); 	if (bits % BITS_PER_LONG)		w += hweight_long(bitmap[k] & BITMAP_LAST_WORD_MASK(bits)); 	return w;} void __bitmap_or(unsigned long *dst, const unsigned long *bitmap1,		 const unsigned long *bitmap2, int bits){	int k;	int nr = BITS_TO_LONGS(bits); 	for (k = 0; k < nr; k++)		dst[k] = bitmap1[k] | bitmap2[k];}