Lines Matching refs:ptr

24 __xchg(unsigned long x, __volatile__ void *ptr, int size)  in __xchg()  argument
28 case 8: return __xchg64(x, (unsigned long *) ptr); in __xchg()
30 case 4: return __xchg32((int) x, (int *) ptr); in __xchg()
31 case 1: return __xchg8((char) x, (char *) ptr); in __xchg()
46 #define xchg(ptr, x) \ argument
47 ((__typeof__(*(ptr)))__xchg((unsigned long)(x), (ptr), sizeof(*(ptr))))
57 extern unsigned long __cmpxchg_u64(volatile unsigned long *ptr,
62 __cmpxchg(volatile void *ptr, unsigned long old, unsigned long new_, int size) in __cmpxchg() argument
66 case 8: return __cmpxchg_u64((unsigned long *)ptr, old, new_); in __cmpxchg()
68 case 4: return __cmpxchg_u32((unsigned int *)ptr, in __cmpxchg()
75 #define cmpxchg(ptr, o, n) \ argument
77 __typeof__(*(ptr)) _o_ = (o); \
78 __typeof__(*(ptr)) _n_ = (n); \
79 (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)_o_, \
80 (unsigned long)_n_, sizeof(*(ptr))); \
85 static inline unsigned long __cmpxchg_local(volatile void *ptr, in __cmpxchg_local() argument
91 case 8: return __cmpxchg_u64((unsigned long *)ptr, old, new_); in __cmpxchg_local()
93 case 4: return __cmpxchg_u32(ptr, old, new_); in __cmpxchg_local()
95 return __cmpxchg_local_generic(ptr, old, new_, size); in __cmpxchg_local()
103 #define cmpxchg_local(ptr, o, n) \ argument
104 ((__typeof__(*(ptr)))__cmpxchg_local((ptr), (unsigned long)(o), \
105 (unsigned long)(n), sizeof(*(ptr))))
107 #define cmpxchg64_local(ptr, o, n) \ argument
109 BUILD_BUG_ON(sizeof(*(ptr)) != 8); \
110 cmpxchg_local((ptr), (o), (n)); \
113 #define cmpxchg64_local(ptr, o, n) __cmpxchg64_local_generic((ptr), (o), (n)) argument