Lines Matching refs:cmpval
42 #define IA64_CMPXCHG(sz, sem, p, cmpval, newval, ret) \
47 : "r" ((uint64_t)cmpval), "r" (newval), "m" (*p) \
54 ia64_cmpxchg_acq_32(volatile uint32_t* p, uint32_t cmpval, uint32_t newval)
57 IA64_CMPXCHG(4, acq, p, cmpval, newval, ret);
62 ia64_cmpxchg_rel_32(volatile uint32_t* p, uint32_t cmpval, uint32_t newval)
65 IA64_CMPXCHG(4, rel, p, cmpval, newval, ret);
70 ia64_cmpxchg_acq_64(volatile uint64_t* p, uint64_t cmpval, uint64_t newval)
73 IA64_CMPXCHG(8, acq, p, cmpval, newval, ret);
78 ia64_cmpxchg_rel_64(volatile uint64_t* p, uint64_t cmpval, uint64_t newval)
81 IA64_CMPXCHG(8, rel, p, cmpval, newval, ret);
283 * Atomically compare the value stored at *p with cmpval and if the
288 atomic_cmpset_acq_32(volatile uint32_t* p, uint32_t cmpval, uint32_t newval)
290 return (ia64_cmpxchg_acq_32(p, cmpval, newval) == cmpval);
294 atomic_cmpset_rel_32(volatile uint32_t* p, uint32_t cmpval, uint32_t newval)
296 return (ia64_cmpxchg_rel_32(p, cmpval, newval) == cmpval);
300 * Atomically compare the value stored at *p with cmpval and if the
305 atomic_cmpset_acq_64(volatile uint64_t* p, uint64_t cmpval, uint64_t newval)
307 return (ia64_cmpxchg_acq_64(p, cmpval, newval) == cmpval);
311 atomic_cmpset_rel_64(volatile uint64_t* p, uint64_t cmpval, uint64_t newval)
313 return (ia64_cmpxchg_rel_64(p, cmpval, newval) == cmpval);