Home | History | Annotate | Download | only in asm-x86

Lines Matching refs:ADDR

20  * bit 0 is the LSB of addr; bit 32 is the LSB of (addr+1).
23 #define ADDR (*(volatile long *) addr)
28 * @addr: the address to start counting from
40 static inline void set_bit(int nr, volatile unsigned long * addr)
44 :"+m" (ADDR)
51 * @addr: the address to start counting from
57 static inline void __set_bit(int nr, volatile unsigned long * addr)
61 :"+m" (ADDR)
68 * @addr: Address to start counting from
75 static inline void clear_bit(int nr, volatile unsigned long * addr)
79 :"+m" (ADDR)
86 * @addr: Address to start counting from
91 static inline void clear_bit_unlock(unsigned long nr, volatile unsigned long *addr)
94 clear_bit(nr, addr);
97 static inline void __clear_bit(int nr, volatile unsigned long * addr)
101 :"+m" (ADDR)
108 * @addr: Address to start counting from
117 static inline void __clear_bit_unlock(unsigned long nr, volatile unsigned long *addr)
120 __clear_bit(nr, addr);
129 * @addr: the address to start counting from
135 static inline void __change_bit(int nr, volatile unsigned long * addr)
139 :"+m" (ADDR)
146 * @addr: Address to start counting from
153 static inline void change_bit(int nr, volatile unsigned long * addr)
157 :"+m" (ADDR)
164 * @addr: Address to count from
170 static inline int test_and_set_bit(int nr, volatile unsigned long * addr)
176 :"=r" (oldbit),"+m" (ADDR)
184 * @addr: Address to count from
188 static inline int test_and_set_bit_lock(int nr, volatile unsigned long *addr)
190 return test_and_set_bit(nr, addr);
196 * @addr: Address to count from
202 static inline int __test_and_set_bit(int nr, volatile unsigned long * addr)
208 :"=r" (oldbit),"+m" (ADDR)
216 * @addr: Address to count from
222 static inline int test_and_clear_bit(int nr, volatile unsigned long * addr)
228 :"=r" (oldbit),"+m" (ADDR)
236 * @addr: Address to count from
242 static inline int __test_and_clear_bit(int nr, volatile unsigned long *addr)
248 :"=r" (oldbit),"+m" (ADDR)
254 static inline int __test_and_change_bit(int nr, volatile unsigned long *addr)
260 :"=r" (oldbit),"+m" (ADDR)
268 * @addr: Address to count from
273 static inline int test_and_change_bit(int nr, volatile unsigned long* addr)
279 :"=r" (oldbit),"+m" (ADDR)
288 * @addr: Address to start counting from
290 static int test_bit(int nr, const volatile void * addr);
293 static __always_inline int constant_test_bit(int nr, const volatile unsigned long *addr)
295 return ((1UL << (nr & 31)) & (addr[nr >> 5])) != 0;
298 static inline int variable_test_bit(int nr, const volatile unsigned long * addr)
305 :"m" (ADDR),"Ir" (nr));
309 #define test_bit(nr,addr) \
311 constant_test_bit((nr),(addr)) : \
312 variable_test_bit((nr),(addr)))
314 #undef ADDR
318 * @addr: The address to start the search at
324 static inline int find_first_zero_bit(const unsigned long *addr, unsigned size)
344 :"1" ((size + 31) >> 5), "2" (addr), "b" (addr) : "memory");
350 * @addr: The address to base the search on
354 int find_next_zero_bit(const unsigned long *addr, int size, int offset);
372 * @addr: The address to start the search at
378 static inline unsigned find_first_bit(const unsigned long *addr, unsigned size)
383 unsigned long val = *addr++;
386 x += (sizeof(*addr)<<3);
393 * @addr: The address to base the search on
397 int find_next_bit(const unsigned long *addr, int size, int offset);
463 #define ext2_set_bit_atomic(lock,nr,addr) \
464 test_and_set_bit((nr),(unsigned long*)addr)
465 #define ext2_clear_bit_atomic(lock,nr, addr) \
466 test_and_clear_bit((nr),(unsigned long*)addr)