1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASM_GENERIC_BITOPS___FFS_H_
3 #define _ASM_GENERIC_BITOPS___FFS_H_
8 * __ffs - find first bit in word.
9 * @word: The word to search
11 * Undefined if no bit exists, so code should check against 0 first.
13 static __always_inline
unsigned long __ffs(unsigned long word
)
17 #if BITS_PER_LONG == 64
18 if ((word
& 0xffffffff) == 0) {
23 if ((word
& 0xffff) == 0) {
27 if ((word
& 0xff) == 0) {
31 if ((word
& 0xf) == 0) {
35 if ((word
& 0x3) == 0) {
39 if ((word
& 0x1) == 0)
44 #endif /* _ASM_GENERIC_BITOPS___FFS_H_ */