1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __ASM_GENERIC_BITS_PER_LONG 3 #define __ASM_GENERIC_BITS_PER_LONG 4 5 #include <uapi/asm-generic/bitsperlong.h> 6 7 #ifdef __SIZEOF_LONG__ 8 #define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__) 9 #else 10 #define BITS_PER_LONG __WORDSIZE 11 #endif 12 13 #if BITS_PER_LONG != __BITS_PER_LONG 14 #error Inconsistent word size. Check asm/bitsperlong.h 15 #endif 16 17 #ifndef BITS_PER_LONG_LONG 18 #define BITS_PER_LONG_LONG 64 19 #endif 20 21 #define small_const_nbits(nbits) \ 22 (__builtin_constant_p(nbits) && (nbits) <= BITS_PER_LONG && (nbits) > 0) 23 24 #endif /* __ASM_GENERIC_BITS_PER_LONG */ 25