ATOMIC_FETCH_OP
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, asm_op) \
#define ATOMIC_FETCH_OP(op, asm_op) \
#undef ATOMIC_FETCH_OP
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op, asm_op) \
#define ATOMIC_FETCH_OP(op, c_op, asm_op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op, asm_op) \
#define ATOMIC_FETCH_OP(name, op) \
#define ATOMIC_FETCH_OP(name, mb, acq, rel, cl, op, asm_op, constraint) \
#define ATOMIC_FETCH_OP(name, mb, op, asm_op, cl...) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, I, asm_op, mb, suffix) \
#define ATOMIC_FETCH_OP(op, I, asm_op) \
#undef ATOMIC_FETCH_OP
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op, asm_op) \
#define ATOMIC_FETCH_OP(op, c_op, asm_op) \
#define ATOMIC_FETCH_OP(pfx, op, type, c_op, asm_op, ll, sc) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, asm_op, I, asm_type, c_type, prefix) \
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op, c_op) \
ATOMIC_FETCH_OP(xor, ^=)
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#define ATOMIC_FETCH_OP(op) \
#undef ATOMIC_FETCH_OP
#define ATOMIC_FETCH_OP(op) \
#define ATOMIC_FETCH_OP(op, c_op) \
#define ATOMIC_FETCH_OP(op, c_op) \