1 #ifndef __ASM_GENERIC_BITOPS_H
2 #define __ASM_GENERIC_BITOPS_H
5 * For the benefit of those who are trying to port Linux to another
6 * architecture, here are some C-language equivalents. You should
7 * recode these in the native assembly language, if at all possible.
9 * C language equivalents written by Theodore Ts'o, 9/26/92
12 #include <linux/irqflags.h>
13 #include <linux/compiler.h>
16 * clear_bit may not imply a memory barrier
18 #ifndef smp_mb__before_clear_bit
19 #define smp_mb__before_clear_bit() smp_mb()
20 #define smp_mb__after_clear_bit() smp_mb()
23 #include <asm-generic/bitops/__ffs.h>
24 #include <asm-generic/bitops/ffz.h>
25 #include <asm-generic/bitops/fls.h>
26 #include <asm-generic/bitops/__fls.h>
27 #include <asm-generic/bitops/fls64.h>
28 #include <asm-generic/bitops/find.h>
30 #ifndef _LINUX_BITOPS_H
31 #error only <linux/bitops.h> can be included directly
34 #include <asm-generic/bitops/sched.h>
35 #include <asm-generic/bitops/ffs.h>
36 #include <asm-generic/bitops/hweight.h>
37 #include <asm-generic/bitops/lock.h>
39 #include <asm-generic/bitops/atomic.h>
40 #include <asm-generic/bitops/non-atomic.h>
41 #include <asm-generic/bitops/ext2-non-atomic.h>
42 #include <asm-generic/bitops/ext2-atomic.h>
43 #include <asm-generic/bitops/minix.h>
45 #endif /* __ASM_GENERIC_BITOPS_H */