Lines Matching refs:nr
31 static inline void bset_reg_set_bit(int nr, volatile unsigned long *vaddr)
33 char *p = (char *)vaddr + (nr ^ 31) / 8;
37 : "a" (p), "di" (nr & 7)
41 static inline void bset_mem_set_bit(int nr, volatile unsigned long *vaddr)
43 char *p = (char *)vaddr + (nr ^ 31) / 8;
47 : "di" (nr & 7));
50 static inline void bfset_mem_set_bit(int nr, volatile unsigned long *vaddr)
54 : "d" (nr ^ 31), "o" (*vaddr)
59 #define set_bit(nr, vaddr) bset_reg_set_bit(nr, vaddr)
61 #define set_bit(nr, vaddr) bset_mem_set_bit(nr, vaddr)
63 #define set_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
64 bset_mem_set_bit(nr, vaddr) : \
65 bfset_mem_set_bit(nr, vaddr))
69 arch___set_bit(unsigned long nr, volatile unsigned long *addr)
71 set_bit(nr, addr);
74 static inline void bclr_reg_clear_bit(int nr, volatile unsigned long *vaddr)
76 char *p = (char *)vaddr + (nr ^ 31) / 8;
80 : "a" (p), "di" (nr & 7)
84 static inline void bclr_mem_clear_bit(int nr, volatile unsigned long *vaddr)
86 char *p = (char *)vaddr + (nr ^ 31) / 8;
90 : "di" (nr & 7));
93 static inline void bfclr_mem_clear_bit(int nr, volatile unsigned long *vaddr)
97 : "d" (nr ^ 31), "o" (*vaddr)
102 #define clear_bit(nr, vaddr) bclr_reg_clear_bit(nr, vaddr)
104 #define clear_bit(nr, vaddr) bclr_mem_clear_bit(nr, vaddr)
106 #define clear_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
107 bclr_mem_clear_bit(nr, vaddr) : \
108 bfclr_mem_clear_bit(nr, vaddr))
112 arch___clear_bit(unsigned long nr, volatile unsigned long *addr)
114 clear_bit(nr, addr);
117 static inline void bchg_reg_change_bit(int nr, volatile unsigned long *vaddr)
119 char *p = (char *)vaddr + (nr ^ 31) / 8;
123 : "a" (p), "di" (nr & 7)
127 static inline void bchg_mem_change_bit(int nr, volatile unsigned long *vaddr)
129 char *p = (char *)vaddr + (nr ^ 31) / 8;
133 : "di" (nr & 7));
136 static inline void bfchg_mem_change_bit(int nr, volatile unsigned long *vaddr)
140 : "d" (nr ^ 31), "o" (*vaddr)
145 #define change_bit(nr, vaddr) bchg_reg_change_bit(nr, vaddr)
147 #define change_bit(nr, vaddr) bchg_mem_change_bit(nr, vaddr)
149 #define change_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
150 bchg_mem_change_bit(nr, vaddr) : \
151 bfchg_mem_change_bit(nr, vaddr))
155 arch___change_bit(unsigned long nr, volatile unsigned long *addr)
157 change_bit(nr, addr);
163 static inline int bset_reg_test_and_set_bit(int nr,
166 char *p = (char *)vaddr + (nr ^ 31) / 8;
171 : "a" (p), "di" (nr & 7)
176 static inline int bset_mem_test_and_set_bit(int nr,
179 char *p = (char *)vaddr + (nr ^ 31) / 8;
184 : "di" (nr & 7));
188 static inline int bfset_mem_test_and_set_bit(int nr,
195 : "d" (nr ^ 31), "o" (*vaddr)
201 #define test_and_set_bit(nr, vaddr) bset_reg_test_and_set_bit(nr, vaddr)
203 #define test_and_set_bit(nr, vaddr) bset_mem_test_and_set_bit(nr, vaddr)
205 #define test_and_set_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
206 bset_mem_test_and_set_bit(nr, vaddr) : \
207 bfset_mem_test_and_set_bit(nr, vaddr))
211 arch___test_and_set_bit(unsigned long nr, volatile unsigned long *addr)
213 return test_and_set_bit(nr, addr);
216 static inline int bclr_reg_test_and_clear_bit(int nr,
219 char *p = (char *)vaddr + (nr ^ 31) / 8;
224 : "a" (p), "di" (nr & 7)
229 static inline int bclr_mem_test_and_clear_bit(int nr,
232 char *p = (char *)vaddr + (nr ^ 31) / 8;
237 : "di" (nr & 7));
241 static inline int bfclr_mem_test_and_clear_bit(int nr,
248 : "d" (nr ^ 31), "o" (*vaddr)
254 #define test_and_clear_bit(nr, vaddr) bclr_reg_test_and_clear_bit(nr, vaddr)
256 #define test_and_clear_bit(nr, vaddr) bclr_mem_test_and_clear_bit(nr, vaddr)
258 #define test_and_clear_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
259 bclr_mem_test_and_clear_bit(nr, vaddr) : \
260 bfclr_mem_test_and_clear_bit(nr, vaddr))
264 arch___test_and_clear_bit(unsigned long nr, volatile unsigned long *addr)
266 return test_and_clear_bit(nr, addr);
269 static inline int bchg_reg_test_and_change_bit(int nr,
272 char *p = (char *)vaddr + (nr ^ 31) / 8;
277 : "a" (p), "di" (nr & 7)
282 static inline int bchg_mem_test_and_change_bit(int nr,
285 char *p = (char *)vaddr + (nr ^ 31) / 8;
290 : "di" (nr & 7));
294 static inline int bfchg_mem_test_and_change_bit(int nr,
301 : "d" (nr ^ 31), "o" (*vaddr)
307 #define test_and_change_bit(nr, vaddr) bchg_reg_test_and_change_bit(nr, vaddr)
309 #define test_and_change_bit(nr, vaddr) bchg_mem_test_and_change_bit(nr, vaddr)
311 #define test_and_change_bit(nr, vaddr) (__builtin_constant_p(nr) ? \
312 bchg_mem_test_and_change_bit(nr, vaddr) : \
313 bfchg_mem_test_and_change_bit(nr, vaddr))
317 arch___test_and_change_bit(unsigned long nr, volatile unsigned long *addr)
319 return test_and_change_bit(nr, addr);