Lines Matching full:old
14 __futex_atomic_##name(int oparg, int *old, u32 __user *uaddr) \
18 instrument_copy_from_user_before(old, uaddr, sizeof(*old)); \
21 "0: l %[old],%[uaddr]\n" \
23 "2: cs %[old],%[new],%[uaddr]\n" \
31 : [rc] "=d" (rc), [old] "=&d" (*old), \
36 instrument_copy_from_user_after(old, uaddr, sizeof(*old), 0); \
41 FUTEX_OP_FUNC(add, "lr %[new],%[old]\n ar %[new],%[oparg]\n")
42 FUTEX_OP_FUNC(or, "lr %[new],%[old]\n or %[new],%[oparg]\n")
43 FUTEX_OP_FUNC(and, "lr %[new],%[old]\n nr %[new],%[oparg]\n")
44 FUTEX_OP_FUNC(xor, "lr %[new],%[old]\n xr %[new],%[oparg]\n")
49 int old, rc; in arch_futex_atomic_op_inuser() local
53 rc = __futex_atomic_set(oparg, &old, uaddr); in arch_futex_atomic_op_inuser()
56 rc = __futex_atomic_add(oparg, &old, uaddr); in arch_futex_atomic_op_inuser()
59 rc = __futex_atomic_or(oparg, &old, uaddr); in arch_futex_atomic_op_inuser()
62 rc = __futex_atomic_and(~oparg, &old, uaddr); in arch_futex_atomic_op_inuser()
65 rc = __futex_atomic_xor(oparg, &old, uaddr); in arch_futex_atomic_op_inuser()
71 *oval = old; in arch_futex_atomic_op_inuser()
83 "0: cs %[old],%[new],%[uaddr]\n" in futex_atomic_cmpxchg_inatomic()
88 : [rc] "=d" (rc), [old] "+d" (oldval), [uaddr] "+Q" (*uaddr) in futex_atomic_cmpxchg_inatomic()