Lines Matching refs:ll
44 #define ATOMIC_OP(pfx, op, type, c_op, asm_op, ll, sc) \
62 "1: " #ll " %0, %1 # " #pfx "_" #op " \n" \
71 #define ATOMIC_OP_RETURN(pfx, op, type, c_op, asm_op, ll, sc) \
92 "1: " #ll " %1, %2 # " #pfx "_" #op "_return\n" \
105 #define ATOMIC_FETCH_OP(pfx, op, type, c_op, asm_op, ll, sc) \
125 "1: " #ll " %1, %2 # " #pfx "_fetch_" #op "\n" \
139 #define ATOMIC_OPS(pfx, op, type, c_op, asm_op, ll, sc) \
140 ATOMIC_OP(pfx, op, type, c_op, asm_op, ll, sc) \
141 ATOMIC_OP_RETURN(pfx, op, type, c_op, asm_op, ll, sc) \
142 ATOMIC_FETCH_OP(pfx, op, type, c_op, asm_op, ll, sc)
144 ATOMIC_OPS(atomic, add, int, +=, addu, ll, sc)
145 ATOMIC_OPS(atomic, sub, int, -=, subu, ll, sc)
162 #define ATOMIC_OPS(pfx, op, type, c_op, asm_op, ll, sc) \
163 ATOMIC_OP(pfx, op, type, c_op, asm_op, ll, sc) \
164 ATOMIC_FETCH_OP(pfx, op, type, c_op, asm_op, ll, sc)
166 ATOMIC_OPS(atomic, and, int, &=, and, ll, sc)
167 ATOMIC_OPS(atomic, or, int, |=, or, ll, sc)
168 ATOMIC_OPS(atomic, xor, int, ^=, xor, ll, sc)
196 #define ATOMIC_SIP_OP(pfx, type, op, ll, sc) \
220 "1: " #ll " %1, %2 # atomic_sub_if_positive\n" \
248 ATOMIC_SIP_OP(atomic, int, subu, ll, sc)