Lines Matching refs:lock
42 #define __xchg_op(ptr, arg, op, lock) \ argument
47 asm_inline volatile (lock #op "b %b0, %1" \
52 asm_inline volatile (lock #op "w %w0, %1" \
57 asm_inline volatile (lock #op "l %0, %1" \
62 asm_inline volatile (lock #op "q %q0, %1" \
85 #define __raw_cmpxchg(ptr, old, new, size, lock) \ argument
94 asm_inline volatile(lock "cmpxchgb %2, %1" \
103 asm_inline volatile(lock "cmpxchgw %2, %1" \
112 asm_inline volatile(lock "cmpxchgl %2, %1" \
121 asm_inline volatile(lock "cmpxchgq %2, %1" \
158 #define __raw_try_cmpxchg(_ptr, _pold, _new, size, lock) \ argument
168 asm_inline volatile(lock "cmpxchgb %[new], %[ptr]" \
180 asm_inline volatile(lock "cmpxchgw %[new], %[ptr]" \
192 asm_inline volatile(lock "cmpxchgl %[new], %[ptr]" \
204 asm_inline volatile(lock "cmpxchgq %[new], %[ptr]" \
245 #define __xadd(ptr, inc, lock) __xchg_op((ptr), (inc), xadd, lock) argument