Lines Matching refs:counter
23 return __READ_ONCE((v)->counter); in arch_atomic_read()
28 __WRITE_ONCE(v->counter, i); in arch_atomic_set()
34 : "+m" (v->counter) in arch_atomic_add()
41 : "+m" (v->counter) in arch_atomic_sub()
47 return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); in arch_atomic_sub_and_test()
54 : "+m" (v->counter) :: "memory"); in arch_atomic_inc()
61 : "+m" (v->counter) :: "memory"); in arch_atomic_dec()
67 return GEN_UNARY_RMWcc(LOCK_PREFIX "decl", v->counter, e); in arch_atomic_dec_and_test()
73 return GEN_UNARY_RMWcc(LOCK_PREFIX "incl", v->counter, e); in arch_atomic_inc_and_test()
79 return GEN_BINARY_RMWcc(LOCK_PREFIX "addl", v->counter, s, "er", i); in arch_atomic_add_negative()
85 return i + xadd(&v->counter, i); in arch_atomic_add_return()
97 return xadd(&v->counter, i); in arch_atomic_fetch_add()
103 return xadd(&v->counter, -i); in arch_atomic_fetch_sub()
109 return arch_cmpxchg(&v->counter, old, new); in arch_atomic_cmpxchg()
115 return arch_try_cmpxchg(&v->counter, old, new); in arch_atomic_try_cmpxchg()
121 return arch_xchg(&v->counter, new); in arch_atomic_xchg()
128 : "+m" (v->counter) in arch_atomic_and()
146 : "+m" (v->counter) in arch_atomic_or()
164 : "+m" (v->counter) in arch_atomic_xor()