1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12#ifndef _I386_BITOPS_H 13#define _I386_BITOPS_H 14 15#ifndef _LINUX_BITOPS_H 16#error only <linux/bitops.h> can be included directly 17#endif 18 19#include <linux/compiler.h> 20#include <asm/alternative.h> 21 22#define ADDR (*(volatile long *) addr) 23 24#define smp_mb__before_clear_bit() barrier() 25#define smp_mb__after_clear_bit() barrier() 26#define test_bit(nr,addr) (__builtin_constant_p(nr) ? constant_test_bit((nr),(addr)) : variable_test_bit((nr),(addr))) 27#undef ADDR 28 29#include <asm-generic/bitops/fls64.h> 30#endif 31