bitmap_word w;
} bitmap;
+#define BITMAP_DECLARE(_name, _nbits) \
+ bitmap (_name)[BITMAP_NWORDS(_nbits)]
+
static inline size_t bitmap_sizeof(int nbits)
{
return BITMAP_NWORDS(nbits) * sizeof(bitmap_word);
static inline bitmap_word bitmap_bswap(bitmap_word w)
{
if (BITMAP_WORD_BITS == 32)
- return cpu_to_be32(w);
+ return (ENDIAN_CAST bitmap_word)cpu_to_be32(w);
else if (BITMAP_WORD_BITS == 64)
- return cpu_to_be64(w);
+ return (ENDIAN_CAST bitmap_word)cpu_to_be64(w);
}
#define BITMAP_WORD(_bm, _n) ((_bm)[(_n) / BITMAP_WORD_BITS].w)