Lines Matching refs:ptr
24 static inline void set_64bit(volatile u64 *ptr, u64 value)
28 u64 prev = *ptr;
33 : "=m" (*ptr), "+A" (prev)
39 #define arch_cmpxchg64(ptr, o, n) \
40 ((__typeof__(*(ptr)))__cmpxchg64((ptr), (unsigned long long)(o), \
42 #define arch_cmpxchg64_local(ptr, o, n) \
43 ((__typeof__(*(ptr)))__cmpxchg64_local((ptr), (unsigned long long)(o), \
47 static inline u64 __cmpxchg64(volatile u64 *ptr, u64 old, u64 new)
52 "+m" (*ptr)
60 static inline u64 __cmpxchg64_local(volatile u64 *ptr, u64 old, u64 new)
65 "+m" (*ptr)
79 #define arch_cmpxchg64(ptr, o, n) \
81 __typeof__(*(ptr)) __ret; \
82 __typeof__(*(ptr)) __old = (o); \
83 __typeof__(*(ptr)) __new = (n); \
89 "S" ((ptr)), "0" (__old), \
96 #define arch_cmpxchg64_local(ptr, o, n) \
98 __typeof__(*(ptr)) __ret; \
99 __typeof__(*(ptr)) __old = (o); \
100 __typeof__(*(ptr)) __new = (n); \
105 "S" ((ptr)), "0" (__old), \