Searched refs:MemoryOrder (Results 1 – 10 of 10) sorted by relevance
| /freebsd/contrib/llvm-project/libc/src/__support/CPP/ |
| H A D | atomic.h | 22 enum class MemoryOrder : int { enum 45 LIBC_INLINE constexpr int order(MemoryOrder mem_ord) { in order() 57 LIBC_INLINE constexpr int infer_failure_order(MemoryOrder mem_ord) { in infer_failure_order() 58 if (mem_ord == MemoryOrder::RELEASE) in infer_failure_order() 59 return order(MemoryOrder::RELAXED); in infer_failure_order() 60 if (mem_ord == MemoryOrder::ACQ_REL) in infer_failure_order() 61 return order(MemoryOrder::ACQUIRE); in infer_failure_order() 111 load(MemoryOrder mem_ord = MemoryOrder::SEQ_CST, 131 store(T rhs, MemoryOrder mem_ord = MemoryOrder::SEQ_CST, 144 T &expected, T desired, MemoryOrder mem_ord = MemoryOrder::SEQ_CST, [all …]
|
| /freebsd/contrib/llvm-project/libc/src/__support/threads/linux/ |
| H A D | rwlock.h | 214 cpp::MemoryOrder order) { in fetch_sub_reader_count() 219 cpp::MemoryOrder order) { in load() 225 cpp::MemoryOrder order) { in fetch_set_pending_bit() 233 cpp::MemoryOrder order) { in fetch_clear_pending_bit() 241 cpp::MemoryOrder order) { in fetch_clear_active_writer() 247 cpp::MemoryOrder success_order, in compare_exchange_weak_with() 248 cpp::MemoryOrder failure_order) { in compare_exchange_weak_with() 259 auto state = RwState::load(target, cpp::MemoryOrder::RELAXED); in spin_reload_until() 348 state, *next, cpp::MemoryOrder::ACQUIRE, in try_lock() 349 cpp::MemoryOrder::RELAXED))) in try_lock() [all …]
|
| H A D | raw_mutex.h | 50 result = futex.load(cpp::MemoryOrder::RELAXED); in spin() 71 futex.compare_exchange_strong(state, LOCKED, cpp::MemoryOrder::ACQUIRE, in lock_slow() 72 cpp::MemoryOrder::RELAXED)) in lock_slow() 83 futex.exchange(IN_CONTENTION, cpp::MemoryOrder::ACQUIRE) == UNLOCKED) in lock_slow() 102 expected, LOCKED, cpp::MemoryOrder::ACQUIRE, cpp::MemoryOrder::RELAXED); in try_lock() 114 FutexWordType prev = futex.exchange(UNLOCKED, cpp::MemoryOrder::RELEASE);
|
| H A D | callonce.h | 27 return flag->load(cpp::MemoryOrder::RELAXED) == FINISH; in callonce_fastpath()
|
| H A D | futex_utils.h | 42 if (this->load(cpp::MemoryOrder::RELAXED) != expected)
|
| /freebsd/contrib/llvm-project/libc/src/__support/threads/ |
| H A D | spin_lock.h | 24 return !flag.exchange(1u, cpp::MemoryOrder::ACQUIRE); in try_lock() 51 while (flag.load(cpp::MemoryOrder::RELAXED)) in lock() 54 LIBC_INLINE void unlock() { flag.store(0u, cpp::MemoryOrder::RELEASE); } in unlock() 55 LIBC_INLINE bool is_locked() { return flag.load(cpp::MemoryOrder::ACQUIRE); } in is_locked() 57 return flag.load(cpp::MemoryOrder::ACQUIRE) > 1; in is_invalid() 60 LIBC_INLINE ~SpinLock() { flag.store(0xffu, cpp::MemoryOrder::RELEASE); } in ~SpinLock()
|
| /freebsd/contrib/llvm-project/libc/src/__support/GPU/ |
| H A D | allocator.cpp | 275 .fetch_or(bitmask, cpp::MemoryOrder::RELAXED); in allocate() 283 cpp::atomic_thread_fence(cpp::MemoryOrder::ACQUIRE); in allocate() 294 cpp::atomic_thread_fence(cpp::MemoryOrder::RELEASE); in deallocate() 296 .fetch_and(~(1u << bit), cpp::MemoryOrder::RELAXED); in deallocate() 319 counter.store(n, cpp::MemoryOrder::RELAXED); in reset() 325 count = counter.fetch_add(n, cpp::MemoryOrder::RELAXED) + n; in acquire() 336 if (counter.fetch_sub(n, cpp::MemoryOrder::RELAXED) == n) { in release() 339 cpp::MemoryOrder::RELAXED, in release() 340 cpp::MemoryOrder::RELAXED)) in release() 343 (counter.exchange(INVALID, cpp::MemoryOrder::RELAXED) & in release() [all …]
|
| /freebsd/contrib/llvm-project/libc/src/__support/time/windows/ |
| H A D | performance_counter.h | 23 auto freq = frequency.load(cpp::MemoryOrder::RELAXED); in get_ticks_per_second() 29 frequency.store(buffer.QuadPart, cpp::MemoryOrder::RELAXED); in get_ticks_per_second()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Frontend/OpenMP/ |
| H A D | ClauseT.h | 239 ENUM(MemoryOrder, AcqRel, Acquire, Relaxed, Release, SeqCst); 422 using MemoryOrder = type::MemoryOrder; 424 MemoryOrder v; // Name not provided in spec 596 using MemoryOrder = type::MemoryOrder; 598 MemoryOrder v;
|
| /freebsd/contrib/llvm-project/clang/lib/Sema/ |
| H A D | OpenCLBuiltins.td | 428 def MemoryOrder : EnumType<"memory_order">; 1101 // Without explicit MemoryOrder or MemoryScope. 1106 // With an explicit MemoryOrder argument. 1108 def : Builtin<Name # "_explicit", !listconcat(Types, [MemoryOrder])>; 1111 // With explicit MemoryOrder and MemoryScope arguments. 1113 def : Builtin<Name # "_explicit", !listconcat(Types, [MemoryOrder, MemoryScope])>; 1145 PointerType<TypePair[1], exp_ptr_addrspace>, TypePair[1], MemoryOrder, MemoryOrder]>; 1150 … PointerType<TypePair[1], exp_ptr_addrspace>, TypePair[1], MemoryOrder, MemoryOrder, MemoryScope]>; 1180 def : Builtin<"atomic_work_item_fence", [Void, MemFenceFlags, MemoryOrder, MemoryScope]>;
|