Lines Matching refs:ptr

28 static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size)  in __xchg()  argument
39 prefetchw((const void *)ptr); in __xchg()
51 : "r" (x), "r" (ptr) in __xchg()
61 : "r" (x), "r" (ptr) in __xchg()
72 : "r" (x), "r" (ptr) in __xchg()
81 ret = *(volatile unsigned char *)ptr; in __xchg()
82 *(volatile unsigned char *)ptr = x; in __xchg()
88 ret = *(volatile unsigned long *)ptr; in __xchg()
89 *(volatile unsigned long *)ptr = x; in __xchg()
97 : "r" (x), "r" (ptr) in __xchg()
104 : "r" (x), "r" (ptr) in __xchg()
110 __bad_xchg(ptr, size), ret = 0; in __xchg()
117 #define arch_xchg_relaxed(ptr, x) ({ \ argument
118 (__typeof__(*(ptr)))__xchg((unsigned long)(x), (ptr), \
119 sizeof(*(ptr))); \
137 #define arch_cmpxchg_local(ptr, o, n) ({ \ argument
138 (__typeof(*ptr))__generic_cmpxchg_local((ptr), \
141 sizeof(*(ptr))); \
144 #define arch_cmpxchg64_local(ptr, o, n) __generic_cmpxchg64_local((ptr), (o), (n)) argument
150 extern void __bad_cmpxchg(volatile void *ptr, int size);
156 static inline unsigned long __cmpxchg(volatile void *ptr, unsigned long old, in __cmpxchg() argument
161 prefetchw((const void *)ptr); in __cmpxchg()
173 : "r" (ptr), "Ir" (old), "r" (new) in __cmpxchg()
185 : "r" (ptr), "Ir" (old), "r" (new) in __cmpxchg()
198 : "r" (ptr), "Ir" (old), "r" (new) in __cmpxchg()
203 __bad_cmpxchg(ptr, size); in __cmpxchg()
210 #define arch_cmpxchg_relaxed(ptr,o,n) ({ \ argument
211 (__typeof__(*(ptr)))__cmpxchg((ptr), \
214 sizeof(*(ptr))); \
217 static inline unsigned long __cmpxchg_local(volatile void *ptr, in __cmpxchg_local() argument
227 ret = __generic_cmpxchg_local(ptr, old, new, size); in __cmpxchg_local()
231 ret = __cmpxchg(ptr, old, new, size); in __cmpxchg_local()
237 #define arch_cmpxchg_local(ptr, o, n) ({ \ argument
238 (__typeof(*ptr))__cmpxchg_local((ptr), \
241 sizeof(*(ptr))); \
244 static inline unsigned long long __cmpxchg64(unsigned long long *ptr, in __cmpxchg64() argument
251 prefetchw(ptr); in __cmpxchg64()
262 : "=&r" (res), "=&r" (oldval), "+Qo" (*ptr) in __cmpxchg64()
263 : "r" (ptr), "r" (old), "r" (new) in __cmpxchg64()
269 #define arch_cmpxchg64_relaxed(ptr, o, n) ({ \ argument
270 (__typeof__(*(ptr)))__cmpxchg64((ptr), \
275 #define arch_cmpxchg64_local(ptr, o, n) arch_cmpxchg64_relaxed((ptr), (o), (n)) argument