/Linux-v5.4/arch/mips/include/asm/ |
D | atomic.h | 55 #define ATOMIC_OP(op, c_op, asm_op) \ argument 66 " " #asm_op " %0, %2 \n" \ 81 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 94 " " #asm_op " %0, %1, %3 \n" \ 97 " " #asm_op " %0, %1, %3 \n" \ 115 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 128 " " #asm_op " %0, %1, %3 \n" \ 148 #define ATOMIC_OPS(op, c_op, asm_op) \ argument 149 ATOMIC_OP(op, c_op, asm_op) \ 150 ATOMIC_OP_RETURN(op, c_op, asm_op) \ [all …]
|
/Linux-v5.4/arch/arc/include/asm/ |
D | bitops.h | 28 #define BIT_OP(op, c_op, asm_op) \ argument 39 " " #asm_op " %0, %0, %2 \n" \ 59 #define TEST_N_BIT_OP(op, c_op, asm_op) \ argument 76 " " #asm_op " %1, %0, %3 \n" \ 106 #define BIT_OP(op, c_op, asm_op) \ argument 123 #define TEST_N_BIT_OP(op, c_op, asm_op) \ argument 141 #define BIT_OP(op, c_op, asm_op) \ argument 147 if (asm_op == CTOP_INST_AAND_DI_R2_R2_R3) \ 155 : "r"(nr), "r"(m), "i"(asm_op) \ 159 #define TEST_N_BIT_OP(op, c_op, asm_op) \ argument [all …]
|
D | atomic.h | 27 #define ATOMIC_OP(op, c_op, asm_op) \ argument 34 " " #asm_op " %[val], %[val], %[i] \n" \ 43 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 56 " " #asm_op " %[val], %[val], %[i] \n" \ 69 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 82 " " #asm_op " %[val], %[orig], %[i] \n" \ 132 #define ATOMIC_OP(op, c_op, asm_op) \ argument 142 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 160 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 179 #define ATOMIC_OPS(op, c_op, asm_op) \ argument [all …]
|
/Linux-v5.4/arch/powerpc/include/asm/ |
D | atomic.h | 42 #define ATOMIC_OP(op, asm_op) \ argument 49 #asm_op " %0,%2,%0\n" \ 58 #define ATOMIC_OP_RETURN_RELAXED(op, asm_op) \ argument 65 #asm_op " %0,%2,%0\n" \ 76 #define ATOMIC_FETCH_OP_RELAXED(op, asm_op) \ argument 83 #asm_op " %1,%3,%0\n" \ 94 #define ATOMIC_OPS(op, asm_op) \ argument 95 ATOMIC_OP(op, asm_op) \ 96 ATOMIC_OP_RETURN_RELAXED(op, asm_op) \ 97 ATOMIC_FETCH_OP_RELAXED(op, asm_op) [all …]
|
/Linux-v5.4/arch/m68k/include/asm/ |
D | atomic.h | 34 #define ATOMIC_OP(op, c_op, asm_op) \ argument 37 __asm__ __volatile__(#asm_op "l %1,%0" : "+m" (*v) : ASM_DI (i));\ 42 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 49 " " #asm_op "l %3,%1\n" \ 57 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 64 " " #asm_op "l %3,%1\n" \ 74 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 87 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 103 #define ATOMIC_OPS(op, c_op, asm_op) \ argument 104 ATOMIC_OP(op, c_op, asm_op) \ [all …]
|
/Linux-v5.4/arch/riscv/include/asm/ |
D | atomic.h | 56 #define ATOMIC_OP(op, asm_op, I, asm_type, c_type, prefix) \ argument 61 " amo" #asm_op "." #asm_type " zero, %1, %0" \ 68 #define ATOMIC_OPS(op, asm_op, I) \ argument 69 ATOMIC_OP (op, asm_op, I, w, int, ) 71 #define ATOMIC_OPS(op, asm_op, I) \ argument 72 ATOMIC_OP (op, asm_op, I, w, int, ) \ 73 ATOMIC_OP (op, asm_op, I, d, s64, 64) 90 #define ATOMIC_FETCH_OP(op, asm_op, I, asm_type, c_type, prefix) \ in ATOMIC_OPS() argument 97 " amo" #asm_op "." #asm_type " %1, %2, %0" \ in ATOMIC_OPS() 108 " amo" #asm_op "." #asm_type ".aqrl %1, %2, %0" \ [all …]
|
/Linux-v5.4/arch/alpha/include/asm/ |
D | atomic.h | 42 #define ATOMIC_OP(op, asm_op) \ argument 48 " " #asm_op " %0,%2,%0\n" \ 58 #define ATOMIC_OP_RETURN(op, asm_op) \ argument 64 " " #asm_op " %0,%3,%2\n" \ 65 " " #asm_op " %0,%3,%0\n" \ 77 #define ATOMIC_FETCH_OP(op, asm_op) \ argument 83 " " #asm_op " %2,%3,%0\n" \ 95 #define ATOMIC64_OP(op, asm_op) \ argument 101 " " #asm_op " %0,%2,%0\n" \ 111 #define ATOMIC64_OP_RETURN(op, asm_op) \ argument [all …]
|
/Linux-v5.4/arch/arm64/include/asm/ |
D | atomic_lse.h | 13 #define ATOMIC_OP(op, asm_op) \ argument 17 " " #asm_op " %w[i], %[v]\n" \ 29 #define ATOMIC_FETCH_OP(name, mb, op, asm_op, cl...) \ in ATOMIC_OP() argument 33 " " #asm_op #mb " %w[i], %w[i], %[v]" \ in ATOMIC_OP() 41 #define ATOMIC_FETCH_OPS(op, asm_op) \ argument 42 ATOMIC_FETCH_OP(_relaxed, , op, asm_op) \ 43 ATOMIC_FETCH_OP(_acquire, a, op, asm_op, "memory") \ 44 ATOMIC_FETCH_OP(_release, l, op, asm_op, "memory") \ 45 ATOMIC_FETCH_OP( , al, op, asm_op, "memory") 158 #define ATOMIC64_OP(op, asm_op) \ argument [all …]
|
D | atomic_ll_sc.h | 38 #define ATOMIC_OP(op, asm_op, constraint) \ argument 49 " " #asm_op " %w0, %w0, %w3\n" \ 56 #define ATOMIC_OP_RETURN(name, mb, acq, rel, cl, op, asm_op, constraint)\ argument 67 " " #asm_op " %w0, %w0, %w3\n" \ 78 #define ATOMIC_FETCH_OP(name, mb, acq, rel, cl, op, asm_op, constraint) \ argument 89 " " #asm_op " %w1, %w0, %w4\n" \ 137 #define ATOMIC64_OP(op, asm_op, constraint) \ in ATOMIC_OPS() argument 148 " " #asm_op " %0, %0, %3\n" \ in ATOMIC_OPS() 155 #define ATOMIC64_OP_RETURN(name, mb, acq, rel, cl, op, asm_op, constraint)\ argument 166 " " #asm_op " %0, %0, %3\n" \ [all …]
|
/Linux-v5.4/arch/arm/include/asm/ |
D | atomic.h | 38 #define ATOMIC_OP(op, c_op, asm_op) \ argument 47 " " #asm_op " %0, %0, %4\n" \ 56 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 66 " " #asm_op " %0, %0, %4\n" \ 77 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 87 " " #asm_op " %1, %0, %5\n" \ 164 #define ATOMIC_OP(op, c_op, asm_op) \ argument 174 #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ argument 188 #define ATOMIC_FETCH_OP(op, c_op, asm_op) \ argument 220 #define ATOMIC_OPS(op, c_op, asm_op) \ argument [all …]
|