Home
last modified time | relevance | path

Searched refs:LOCK_PREFIX (Results 1 – 16 of 16) sorted by relevance

/Linux-v5.4/arch/x86/include/asm/
Datomic.h55 asm volatile(LOCK_PREFIX "addl %1,%0" in arch_atomic_add()
69 asm volatile(LOCK_PREFIX "subl %1,%0" in arch_atomic_sub()
85 return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); in arch_atomic_sub_and_test()
97 asm volatile(LOCK_PREFIX "incl %0" in arch_atomic_inc()
110 asm volatile(LOCK_PREFIX "decl %0" in arch_atomic_dec()
125 return GEN_UNARY_RMWcc(LOCK_PREFIX "decl", v->counter, e); in arch_atomic_dec_and_test()
139 return GEN_UNARY_RMWcc(LOCK_PREFIX "incl", v->counter, e); in arch_atomic_inc_and_test()
154 return GEN_BINARY_RMWcc(LOCK_PREFIX "addl", v->counter, s, "er", i); in arch_atomic_add_negative()
210 asm volatile(LOCK_PREFIX "andl %1,%0" in arch_atomic_and()
227 asm volatile(LOCK_PREFIX "orl %1,%0" in arch_atomic_or()
[all …]
Datomic64_64.h46 asm volatile(LOCK_PREFIX "addq %1,%0" in arch_atomic64_add()
60 asm volatile(LOCK_PREFIX "subq %1,%0" in arch_atomic64_sub()
76 return GEN_BINARY_RMWcc(LOCK_PREFIX "subq", v->counter, e, "er", i); in arch_atomic64_sub_and_test()
88 asm volatile(LOCK_PREFIX "incq %0" in arch_atomic64_inc()
102 asm volatile(LOCK_PREFIX "decq %0" in arch_atomic64_dec()
118 return GEN_UNARY_RMWcc(LOCK_PREFIX "decq", v->counter, e); in arch_atomic64_dec_and_test()
132 return GEN_UNARY_RMWcc(LOCK_PREFIX "incq", v->counter, e); in arch_atomic64_inc_and_test()
147 return GEN_BINARY_RMWcc(LOCK_PREFIX "addq", v->counter, s, "er", i); in arch_atomic64_add_negative()
196 asm volatile(LOCK_PREFIX "andq %1,%0" in arch_atomic64_and()
213 asm volatile(LOCK_PREFIX "orq %1,%0" in arch_atomic64_or()
[all …]
Dbitops.h55 asm volatile(LOCK_PREFIX "orb %1,%0" in arch_set_bit()
60 asm volatile(LOCK_PREFIX __ASM_SIZE(bts) " %1,%0" in arch_set_bit()
75 asm volatile(LOCK_PREFIX "andb %1,%0" in arch_clear_bit()
79 asm volatile(LOCK_PREFIX __ASM_SIZE(btr) " %1,%0" in arch_clear_bit()
101 asm volatile(LOCK_PREFIX "andb %2,%1" in arch_clear_bit_unlock_is_negative_byte()
126 asm volatile(LOCK_PREFIX "xorb %1,%0" in arch_change_bit()
130 asm volatile(LOCK_PREFIX __ASM_SIZE(btc) " %1,%0" in arch_change_bit()
138 return GEN_BINARY_RMWcc(LOCK_PREFIX __ASM_SIZE(bts), *addr, c, "Ir", nr); in arch_test_and_set_bit()
162 return GEN_BINARY_RMWcc(LOCK_PREFIX __ASM_SIZE(btr), *addr, c, "Ir", nr); in arch_test_and_clear_bit()
201 return GEN_BINARY_RMWcc(LOCK_PREFIX __ASM_SIZE(btc), *addr, c, "Ir", nr); in arch_test_and_change_bit()
Drefcount.h44 asm volatile(LOCK_PREFIX "addl %1,%0\n\t" in refcount_add()
53 asm volatile(LOCK_PREFIX "incl %0\n\t" in refcount_inc()
61 asm volatile(LOCK_PREFIX "decl %0\n\t" in refcount_dec()
70 bool ret = GEN_BINARY_SUFFIXED_RMWcc(LOCK_PREFIX "subl", in refcount_sub_and_test()
84 bool ret = GEN_UNARY_SUFFIXED_RMWcc(LOCK_PREFIX "decl", in refcount_dec_and_test()
Dcmpxchg.h134 __raw_cmpxchg((ptr), (old), (new), (size), LOCK_PREFIX)
222 __raw_try_cmpxchg((ptr), (pold), (new), (size), LOCK_PREFIX)
234 #define xadd(ptr, inc) __xadd((ptr), (inc), LOCK_PREFIX)
256 __cmpxchg_double(LOCK_PREFIX, p1, p2, o1, o2, n1, n2)
Dfutex.h32 "2:\t" LOCK_PREFIX "cmpxchgl %3, %2\n" \
57 __futex_atomic_op1(LOCK_PREFIX "xaddl %0, %2", ret, oldval, in arch_futex_atomic_op_inuser()
Dcmpxchg_32.h31 LOCK_PREFIX "cmpxchg8b %0\n\t" in set_64bit()
50 asm volatile(LOCK_PREFIX "cmpxchg8b %1" in __cmpxchg64()
Dalternative-asm.h10 .macro LOCK_PREFIX
18 .macro LOCK_PREFIX
Dqspinlock_paravirt.h46 LOCK_PREFIX "cmpxchg %dl,(%rdi);"
Dalternative.h41 #define LOCK_PREFIX LOCK_PREFIX_HERE "\n\tlock; " macro
45 #define LOCK_PREFIX "" macro
Duaccess.h600 "1:\t" LOCK_PREFIX "cmpxchgb %4, %2\n" \
616 "1:\t" LOCK_PREFIX "cmpxchgw %4, %2\n" \
632 "1:\t" LOCK_PREFIX "cmpxchgl %4, %2\n" \
651 "1:\t" LOCK_PREFIX "cmpxchgq %4, %2\n" \
Dqspinlock.h23 val = GEN_BINARY_RMWcc(LOCK_PREFIX "btsl", lock->val.counter, c, in queued_fetch_set_pending_acquire()
/Linux-v5.4/arch/x86/lib/
Datomic64_cx8_32.S15 LOCK_PREFIX
36 LOCK_PREFIX
60 LOCK_PREFIX
88 LOCK_PREFIX
113 LOCK_PREFIX
143 LOCK_PREFIX
172 LOCK_PREFIX
/Linux-v5.4/tools/arch/x86/include/asm/
Datomic.h9 #define LOCK_PREFIX "\n\tlock; " macro
51 asm volatile(LOCK_PREFIX "incl %0" in atomic_inc()
65 GEN_UNARY_RMWcc(LOCK_PREFIX "decl", v->counter, "%0", "e"); in atomic_dec_and_test()
Dcmpxchg.h84 __raw_cmpxchg((ptr), (old), (new), (size), LOCK_PREFIX)
/Linux-v5.4/arch/x86/include/asm/uv/
Duv_bau.h833 asm volatile(LOCK_PREFIX "xaddw %0, %1" in atom_asr()