Lines Matching defs:ptr
11 #define arch_cmpxchg64(ptr, o, n) \
12 ((__typeof__(*(ptr)))__cmpxchg64((ptr), (unsigned long long)(o), \
14 #define arch_cmpxchg64_local(ptr, o, n) \
15 ((__typeof__(*(ptr)))__cmpxchg64_local((ptr), (unsigned long long)(o), \
17 #define arch_try_cmpxchg64(ptr, po, n) \
18 __try_cmpxchg64((ptr), (unsigned long long *)(po), \
22 static inline u64 __cmpxchg64(volatile u64 *ptr, u64 old, u64 new)
27 "+m" (*ptr)
35 static inline u64 __cmpxchg64_local(volatile u64 *ptr, u64 old, u64 new)
40 "+m" (*ptr)
48 static inline bool __try_cmpxchg64(volatile u64 *ptr, u64 *pold, u64 new)
52 asm volatile(LOCK_PREFIX "cmpxchg8b %[ptr]"
55 [ptr] "+m" (*ptr),
72 #define arch_cmpxchg64(ptr, o, n) \
74 __typeof__(*(ptr)) __ret; \
75 __typeof__(*(ptr)) __old = (o); \
76 __typeof__(*(ptr)) __new = (n); \
82 "S" ((ptr)), "0" (__old), \
89 #define arch_cmpxchg64_local(ptr, o, n) \
91 __typeof__(*(ptr)) __ret; \
92 __typeof__(*(ptr)) __old = (o); \
93 __typeof__(*(ptr)) __new = (n); \
98 "S" ((ptr)), "0" (__old), \