Lines Matching refs:v
24 #define atomic_read(v) ACCESS_ONCE((v)->counter) argument
25 #define atomic64_read(v) ACCESS_ONCE((v)->counter) argument
27 #define atomic_set(v,i) (((v)->counter) = (i)) argument
28 #define atomic64_set(v,i) (((v)->counter) = (i)) argument
32 ia64_atomic_##op (int i, atomic_t *v) \
38 CMPXCHG_BUGCHECK(v); \
39 old = atomic_read(v); \
41 } while (ia64_cmpxchg(acq, v, old, new, sizeof(atomic_t)) != old); \
50 #define atomic_add_return(i,v) \ argument
58 ? ia64_fetch_and_add(__ia64_aar_i, &(v)->counter) \
59 : ia64_atomic_add(__ia64_aar_i, v); \
62 #define atomic_sub_return(i,v) \ argument
70 ? ia64_fetch_and_add(-__ia64_asr_i, &(v)->counter) \
71 : ia64_atomic_sub(__ia64_asr_i, v); \
76 ia64_atomic64_##op (__s64 i, atomic64_t *v) \
82 CMPXCHG_BUGCHECK(v); \
83 old = atomic64_read(v); \
85 } while (ia64_cmpxchg(acq, v, old, new, sizeof(atomic64_t)) != old); \
94 #define atomic64_add_return(i,v) \ argument
102 ? ia64_fetch_and_add(__ia64_aar_i, &(v)->counter) \
103 : ia64_atomic64_add(__ia64_aar_i, v); \
106 #define atomic64_sub_return(i,v) \ argument
114 ? ia64_fetch_and_add(-__ia64_asr_i, &(v)->counter) \
115 : ia64_atomic64_sub(__ia64_asr_i, v); \
118 #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), old, new)) argument
119 #define atomic_xchg(v, new) (xchg(&((v)->counter), new)) argument
121 #define atomic64_cmpxchg(v, old, new) \ argument
122 (cmpxchg(&((v)->counter), old, new))
123 #define atomic64_xchg(v, new) (xchg(&((v)->counter), new)) argument
125 static __inline__ int __atomic_add_unless(atomic_t *v, int a, int u) in __atomic_add_unless() argument
128 c = atomic_read(v); in __atomic_add_unless()
132 old = atomic_cmpxchg((v), c, c + (a)); in __atomic_add_unless()
141 static __inline__ long atomic64_add_unless(atomic64_t *v, long a, long u) in atomic64_add_unless() argument
144 c = atomic64_read(v); in atomic64_add_unless()
148 old = atomic64_cmpxchg((v), c, c + (a)); in atomic64_add_unless()
156 #define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0) argument
163 atomic_add_negative (int i, atomic_t *v) in atomic_add_negative() argument
165 return atomic_add_return(i, v) < 0; in atomic_add_negative()
169 atomic64_add_negative (__s64 i, atomic64_t *v) in atomic64_add_negative() argument
171 return atomic64_add_return(i, v) < 0; in atomic64_add_negative()
174 #define atomic_dec_return(v) atomic_sub_return(1, (v)) argument
175 #define atomic_inc_return(v) atomic_add_return(1, (v)) argument
176 #define atomic64_dec_return(v) atomic64_sub_return(1, (v)) argument
177 #define atomic64_inc_return(v) atomic64_add_return(1, (v)) argument
179 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0) argument
180 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0) argument
181 #define atomic_inc_and_test(v) (atomic_add_return(1, (v)) == 0) argument
182 #define atomic64_sub_and_test(i,v) (atomic64_sub_return((i), (v)) == 0) argument
183 #define atomic64_dec_and_test(v) (atomic64_sub_return(1, (v)) == 0) argument
184 #define atomic64_inc_and_test(v) (atomic64_add_return(1, (v)) == 0) argument
186 #define atomic_add(i,v) (void)atomic_add_return((i), (v)) argument
187 #define atomic_sub(i,v) (void)atomic_sub_return((i), (v)) argument
188 #define atomic_inc(v) atomic_add(1, (v)) argument
189 #define atomic_dec(v) atomic_sub(1, (v)) argument
191 #define atomic64_add(i,v) (void)atomic64_add_return((i), (v)) argument
192 #define atomic64_sub(i,v) (void)atomic64_sub_return((i), (v)) argument
193 #define atomic64_inc(v) atomic64_add(1, (v)) argument
194 #define atomic64_dec(v) atomic64_sub(1, (v)) argument