Lines Matching +full:non +full:- +full:volatile

1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
47 * Therefore, except for special cases, like non-temporal memory accesses or
63 * The open-coded number is used instead of the symbolic expression to
82 * atomic_subtract_char(P, V) (*(u_char *)(P) -= (V))
87 * atomic_subtract_short(P, V) (*(u_short *)(P) -= (V))
92 * atomic_subtract_int(P, V) (*(u_int *)(P) -= (V))
99 * atomic_subtract_long(P, V) (*(u_long *)(P) -= (V))
115 atomic_##NAME##_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
124 atomic_##NAME##_barr_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
146 * Returns 0 on failure, non-zero on success.
150 atomic_cmpset_##TYPE(volatile u_##TYPE *dst, u_##TYPE expect, u_##TYPE src) \
166 atomic_fcmpset_##TYPE(volatile u_##TYPE *dst, u_##TYPE *expect, u_##TYPE src) \
191 atomic_fetchadd_int(volatile u_int *p, u_int v) in atomic_fetchadd_int()
208 atomic_fetchadd_long(volatile u_long *p, u_long v) in atomic_fetchadd_long()
221 atomic_testandset_int(volatile u_int *p, u_int v) in atomic_testandset_int()
236 atomic_testandset_long(volatile u_long *p, u_int v) in atomic_testandset_long()
251 atomic_testandclear_int(volatile u_int *p, u_int v) in atomic_testandclear_int()
266 atomic_testandclear_long(volatile u_long *p, u_int v) in atomic_testandclear_long()
289 * special address for "mem". In the kernel, we use a private per-cpu
291 * (-8(%rsp)).
301 __asm __volatile("lock; addl $0,-8(%%rsp)" : : : "memory", "cc"); in __storeload_barrier()
307 atomic_load_acq_##TYPE(const volatile u_##TYPE *p) \
319 atomic_store_rel_##TYPE(volatile u_##TYPE *p, u_##TYPE v) \
391 atomic_swap_int(volatile u_int *p, u_int v) in atomic_swap_int()
403 atomic_swap_long(volatile u_long *p, u_long v) in atomic_swap_long()
470 /* Operations on 8-bit bytes. */
492 /* Operations on 16-bit words. */
514 /* Operations on 32-bit double words. */
541 /* Operations on 64-bit quad words. */