Lines Matching refs:v
19 static inline long atomic64_read(const atomic64_t *v) in atomic64_read() argument
21 return (*(volatile long *)&(v)->counter); in atomic64_read()
31 static inline void atomic64_set(atomic64_t *v, long i) in atomic64_set() argument
33 v->counter = i; in atomic64_set()
43 static inline void atomic64_add(long i, atomic64_t *v) in atomic64_add() argument
46 : "=m" (v->counter) in atomic64_add()
47 : "er" (i), "m" (v->counter)); in atomic64_add()
57 static inline void atomic64_sub(long i, atomic64_t *v) in atomic64_sub() argument
60 : "=m" (v->counter) in atomic64_sub()
61 : "er" (i), "m" (v->counter)); in atomic64_sub()
73 static inline int atomic64_sub_and_test(long i, atomic64_t *v) in atomic64_sub_and_test() argument
78 : "=m" (v->counter), "=qm" (c) in atomic64_sub_and_test()
79 : "er" (i), "m" (v->counter) : "memory"); in atomic64_sub_and_test()
89 static inline void atomic64_inc(atomic64_t *v) in atomic64_inc() argument
92 : "=m" (v->counter) in atomic64_inc()
93 : "m" (v->counter)); in atomic64_inc()
102 static inline void atomic64_dec(atomic64_t *v) in atomic64_dec() argument
105 : "=m" (v->counter) in atomic64_dec()
106 : "m" (v->counter)); in atomic64_dec()
117 static inline int atomic64_dec_and_test(atomic64_t *v) in atomic64_dec_and_test() argument
122 : "=m" (v->counter), "=qm" (c) in atomic64_dec_and_test()
123 : "m" (v->counter) : "memory"); in atomic64_dec_and_test()
135 static inline int atomic64_inc_and_test(atomic64_t *v) in atomic64_inc_and_test() argument
140 : "=m" (v->counter), "=qm" (c) in atomic64_inc_and_test()
141 : "m" (v->counter) : "memory"); in atomic64_inc_and_test()
154 static inline int atomic64_add_negative(long i, atomic64_t *v) in atomic64_add_negative() argument
159 : "=m" (v->counter), "=qm" (c) in atomic64_add_negative()
160 : "er" (i), "m" (v->counter) : "memory"); in atomic64_add_negative()
171 static inline long atomic64_add_return(long i, atomic64_t *v) in atomic64_add_return() argument
173 return i + xadd(&v->counter, i); in atomic64_add_return()
176 static inline long atomic64_sub_return(long i, atomic64_t *v) in atomic64_sub_return() argument
178 return atomic64_add_return(-i, v); in atomic64_sub_return()
181 #define atomic64_inc_return(v) (atomic64_add_return(1, (v))) argument
182 #define atomic64_dec_return(v) (atomic64_sub_return(1, (v))) argument
184 static inline long atomic64_cmpxchg(atomic64_t *v, long old, long new) in atomic64_cmpxchg() argument
186 return cmpxchg(&v->counter, old, new); in atomic64_cmpxchg()
189 static inline long atomic64_xchg(atomic64_t *v, long new) in atomic64_xchg() argument
191 return xchg(&v->counter, new); in atomic64_xchg()
203 static inline int atomic64_add_unless(atomic64_t *v, long a, long u) in atomic64_add_unless() argument
206 c = atomic64_read(v); in atomic64_add_unless()
210 old = atomic64_cmpxchg((v), c, c + (a)); in atomic64_add_unless()
218 #define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0) argument
227 static inline long atomic64_dec_if_positive(atomic64_t *v) in atomic64_dec_if_positive() argument
230 c = atomic64_read(v); in atomic64_dec_if_positive()
235 old = atomic64_cmpxchg((v), c, dec); in atomic64_dec_if_positive()