Lines Matching full:old
203 #define arch_atomic64_cmpxchg(v, old, new) \ in ATOMIC_OPS() argument
204 (arch_cmpxchg(&((v)->counter), old, new)) in ATOMIC_OPS()
208 #define arch_atomic_cmpxchg(v, old, new) \ in ATOMIC_OPS() argument
209 (arch_cmpxchg(&((v)->counter), old, new)) in ATOMIC_OPS()
220 * Returns the old value of @v. in ATOMIC_OPS()
224 int c, new, old; in ATOMIC_OPS() local
227 "1: ldl_l %[old],%[mem]\n" in ATOMIC_OPS()
228 " cmpeq %[old],%[u],%[c]\n" in ATOMIC_OPS()
229 " addl %[old],%[a],%[new]\n" in ATOMIC_OPS()
237 : [old] "=&r"(old), [new] "=&r"(new), [c] "=&r"(c) in ATOMIC_OPS()
241 return old; in ATOMIC_OPS()
252 * Returns the old value of @v.
256 s64 c, new, old; in arch_atomic64_fetch_add_unless() local
259 "1: ldq_l %[old],%[mem]\n" in arch_atomic64_fetch_add_unless()
260 " cmpeq %[old],%[u],%[c]\n" in arch_atomic64_fetch_add_unless()
261 " addq %[old],%[a],%[new]\n" in arch_atomic64_fetch_add_unless()
269 : [old] "=&r"(old), [new] "=&r"(new), [c] "=&r"(c) in arch_atomic64_fetch_add_unless()
273 return old; in arch_atomic64_fetch_add_unless()
278 * arch_atomic64_dec_if_positive - decrement by 1 if old value positive
281 * The function returns the old value of *v minus 1, even if
286 s64 old, tmp; in arch_atomic64_dec_if_positive() local
289 "1: ldq_l %[old],%[mem]\n" in arch_atomic64_dec_if_positive()
290 " subq %[old],1,%[tmp]\n" in arch_atomic64_dec_if_positive()
291 " ble %[old],2f\n" in arch_atomic64_dec_if_positive()
298 : [old] "=&r"(old), [tmp] "=&r"(tmp) in arch_atomic64_dec_if_positive()
302 return old - 1; in arch_atomic64_dec_if_positive()