Lines Matching refs:memory_order
28 enum memory_order: unspecified // enum class in C++20
38 inline constexpr auto memory_order_relaxed = memory_order::relaxed;
39 inline constexpr auto memory_order_consume = memory_order::consume;
40 inline constexpr auto memory_order_acquire = memory_order::acquire;
41 inline constexpr auto memory_order_release = memory_order::release;
42 inline constexpr auto memory_order_acq_rel = memory_order::acq_rel;
43 inline constexpr auto memory_order_seq_cst = memory_order::seq_cst;
77 T load(memory_order m = memory_order_seq_cst) const volatile noexcept;
78 T load(memory_order m = memory_order_seq_cst) const noexcept;
81 void store(T desr, memory_order m = memory_order_seq_cst) volatile noexcept;
82 void store(T desr, memory_order m = memory_order_seq_cst) noexcept;
86 T exchange(T desr, memory_order m = memory_order_seq_cst) volatile noexcept;
87 T exchange(T desr, memory_order m = memory_order_seq_cst) noexcept;
89 memory_order s, memory_order f) volatile noexcept;
90 bool compare_exchange_weak(T& expc, T desr, memory_order s, memory_order f) noexcept;
92 memory_order s, memory_order f) volatile noexcept;
94 memory_order s, memory_order f) noexcept;
96 memory_order m = memory_order_seq_cst) volatile noexcept;
98 memory_order m = memory_order_seq_cst) noexcept;
100 memory_order m = memory_order_seq_cst) volatile noexcept;
102 memory_order m = memory_order_seq_cst) noexcept;
104 void wait(T, memory_order = memory_order::seq_cst) const volatile noexcept;
105 void wait(T, memory_order = memory_order::seq_cst) const noexcept;
128 integral load(memory_order m = memory_order_seq_cst) const volatile noexcept;
129 integral load(memory_order m = memory_order_seq_cst) const noexcept;
132 void store(integral desr, memory_order m = memory_order_seq_cst) volatile noexcept;
133 void store(integral desr, memory_order m = memory_order_seq_cst) noexcept;
138 memory_order m = memory_order_seq_cst) volatile noexcept;
139 integral exchange(integral desr, memory_order m = memory_order_seq_cst) noexcept;
141 memory_order s, memory_order f) volatile noexcept;
143 memory_order s, memory_order f) noexcept;
145 memory_order s, memory_order f) volatile noexcept;
147 memory_order s, memory_order f) noexcept;
149 memory_order m = memory_order_seq_cst) volatile noexcept;
151 memory_order m = memory_order_seq_cst) noexcept;
153 memory_order m = memory_order_seq_cst) volatile noexcept;
155 memory_order m = memory_order_seq_cst) noexcept;
157 integral fetch_add(integral op, memory_order m = memory_order_seq_cst) volatile noexcept;
158 integral fetch_add(integral op, memory_order m = memory_order_seq_cst) noexcept;
159 integral fetch_sub(integral op, memory_order m = memory_order_seq_cst) volatile noexcept;
160 integral fetch_sub(integral op, memory_order m = memory_order_seq_cst) noexcept;
161 integral fetch_and(integral op, memory_order m = memory_order_seq_cst) volatile noexcept;
162 integral fetch_and(integral op, memory_order m = memory_order_seq_cst) noexcept;
163 integral fetch_or(integral op, memory_order m = memory_order_seq_cst) volatile noexcept;
164 integral fetch_or(integral op, memory_order m = memory_order_seq_cst) noexcept;
165 integral fetch_xor(integral op, memory_order m = memory_order_seq_cst) volatile noexcept;
166 integral fetch_xor(integral op, memory_order m = memory_order_seq_cst) noexcept;
187 void wait(integral, memory_order = memory_order::seq_cst) const volatile noexcept;
188 void wait(integral, memory_order = memory_order::seq_cst) const noexcept;
212 T* load(memory_order m = memory_order_seq_cst) const volatile noexcept;
213 T* load(memory_order m = memory_order_seq_cst) const noexcept;
216 void store(T* desr, memory_order m = memory_order_seq_cst) volatile noexcept;
217 void store(T* desr, memory_order m = memory_order_seq_cst) noexcept;
221 T* exchange(T* desr, memory_order m = memory_order_seq_cst) volatile noexcept;
222 T* exchange(T* desr, memory_order m = memory_order_seq_cst) noexcept;
224 memory_order s, memory_order f) volatile noexcept;
226 memory_order s, memory_order f) noexcept;
228 memory_order s, memory_order f) volatile noexcept;
230 memory_order s, memory_order f) noexcept;
232 memory_order m = memory_order_seq_cst) volatile noexcept;
234 memory_order m = memory_order_seq_cst) noexcept;
236 memory_order m = memory_order_seq_cst) volatile noexcept;
238 memory_order m = memory_order_seq_cst) noexcept;
239 T* fetch_add(ptrdiff_t op, memory_order m = memory_order_seq_cst) volatile noexcept;
240 T* fetch_add(ptrdiff_t op, memory_order m = memory_order_seq_cst) noexcept;
241 T* fetch_sub(ptrdiff_t op, memory_order m = memory_order_seq_cst) volatile noexcept;
242 T* fetch_sub(ptrdiff_t op, memory_order m = memory_order_seq_cst) noexcept;
257 void wait(T*, memory_order = memory_order::seq_cst) const volatile noexcept;
258 void wait(T*, memory_order = memory_order::seq_cst) const noexcept;
279 void atomic_store_explicit(volatile atomic<T>* obj, T desr, memory_order m) noexcept;
282 void atomic_store_explicit(atomic<T>* obj, T desr, memory_order m) noexcept;
291 T atomic_load_explicit(const volatile atomic<T>* obj, memory_order m) noexcept;
294 T atomic_load_explicit(const atomic<T>* obj, memory_order m) noexcept;
303 T atomic_exchange_explicit(volatile atomic<T>* obj, T desr, memory_order m) noexcept;
306 T atomic_exchange_explicit(atomic<T>* obj, T desr, memory_order m) noexcept;
323 memory_order s, memory_order f) noexcept;
327 memory_order s, memory_order f) noexcept;
332 memory_order s, memory_order f) noexcept;
337 memory_order s, memory_order f) noexcept;
346 void atomic_wait_explicit(const volatile atomic<T>* obj, T old, memory_order m) noexcept;
349 void atomic_wait_explicit(const atomic<T>* obj, T old, memory_order m) noexcept;
371 memory_order m) noexcept;
374 memory_order m) noexcept;
383 memory_order m) noexcept;
387 memory_order m) noexcept;
397 memory_order m) noexcept;
401 memory_order m) noexcept;
411 memory_order m) noexcept;
415 memory_order m) noexcept;
425 memory_order m) noexcept;
429 memory_order m) noexcept;
439 memory_order m) noexcept;
442 T* atomic_fetch_add_explicit(atomic<T*>* obj, ptrdiff_t op, memory_order m) noexcept;
452 memory_order m) noexcept;
455 T* atomic_fetch_sub_explicit(atomic<T*>* obj, ptrdiff_t op, memory_order m) noexcept;
520 bool test(memory_order m = memory_order_seq_cst) volatile noexcept;
521 bool test(memory_order m = memory_order_seq_cst) noexcept;
522 bool test_and_set(memory_order m = memory_order_seq_cst) volatile noexcept;
523 bool test_and_set(memory_order m = memory_order_seq_cst) noexcept;
524 void clear(memory_order m = memory_order_seq_cst) volatile noexcept;
525 void clear(memory_order m = memory_order_seq_cst) noexcept;
527 void wait(bool, memory_order = memory_order::seq_cst) const volatile noexcept;
528 void wait(bool, memory_order = memory_order::seq_cst) const noexcept;
538 memory_order m) noexcept;
539 bool atomic_flag_test_explicit(atomic_flag* obj, memory_order m) noexcept;
543 memory_order m) noexcept;
544 bool atomic_flag_test_and_set_explicit(atomic_flag* obj, memory_order m) noexcept;
547 void atomic_flag_clear_explicit(volatile atomic_flag* obj, memory_order m) noexcept;
548 void atomic_flag_clear_explicit(atomic_flag* obj, memory_order m) noexcept;
552 void atomic_wait_explicit(const volatile atomic_flag* obj, T old, memory_order m) noexcept;
553 void atomic_wait_explicit(const atomic_flag* obj, T old, memory_order m) noexcept;
561 void atomic_thread_fence(memory_order m) noexcept;
562 void atomic_signal_fence(memory_order m) noexcept;
621 // Figure out what the underlying type for `memory_order` would be if it were
637 enum class memory_order : __memory_order_underlying_t {
646 inline constexpr auto memory_order_relaxed = memory_order::relaxed;
647 inline constexpr auto memory_order_consume = memory_order::consume;
648 inline constexpr auto memory_order_acquire = memory_order::acquire;
649 inline constexpr auto memory_order_release = memory_order::release;
650 inline constexpr auto memory_order_acq_rel = memory_order::acq_rel;
651 inline constexpr auto memory_order_seq_cst = memory_order::seq_cst;
655 typedef enum memory_order {
662 } memory_order;
671 static_assert((is_same<underlying_type<memory_order>::type, __memory_order_underlying_t>::value),
672 "unexpected underlying type for std::memory_order");
713 _LIBCPP_INLINE_VISIBILITY inline _LIBCPP_CONSTEXPR int __to_gcc_order(memory_order __order) {
723 _LIBCPP_INLINE_VISIBILITY inline _LIBCPP_CONSTEXPR int __to_gcc_failure_order(memory_order __order)…
746 void __cxx_atomic_thread_fence(memory_order __order) {
751 void __cxx_atomic_signal_fence(memory_order __order) {
758 memory_order __order) {
766 memory_order __order) {
774 memory_order __order) {
783 _Tp __cxx_atomic_load(const __cxx_atomic_base_impl<_Tp>* __a, memory_order __order) {
793 _Tp __value, memory_order __order) {
803 memory_order __order) {
814 memory_order __success, memory_order __failure) {
824 __cxx_atomic_base_impl<_Tp>* __a, _Tp* __expected, _Tp __value, memory_order __success,
825 memory_order __failure) {
836 memory_order __success, memory_order __failure) {
846 __cxx_atomic_base_impl<_Tp>* __a, _Tp* __expected, _Tp __value, memory_order __success,
847 memory_order __failure) {
870 _Td __delta, memory_order __order) {
878 memory_order __order) {
886 _Td __delta, memory_order __order) {
894 memory_order __order) {
902 _Tp __pattern, memory_order __order) {
910 _Tp __pattern, memory_order __order) {
918 _Tp __pattern, memory_order __order) {
926 memory_order __order) {
934 _Tp __pattern, memory_order __order) {
942 memory_order __order) {
968 void __cxx_atomic_thread_fence(memory_order __order) _NOEXCEPT {
973 void __cxx_atomic_signal_fence(memory_order __order) _NOEXCEPT {
990 void __cxx_atomic_store(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __val, memory_order __order)…
995 void __cxx_atomic_store(__cxx_atomic_base_impl<_Tp> * __a, _Tp __val, memory_order __order) _NOEXCE…
1001 _Tp __cxx_atomic_load(__cxx_atomic_base_impl<_Tp> const volatile* __a, memory_order __order) _NOEXC…
1007 _Tp __cxx_atomic_load(__cxx_atomic_base_impl<_Tp> const* __a, memory_order __order) _NOEXCEPT {
1014 _Tp __cxx_atomic_exchange(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __value, memory_order __or…
1019 _Tp __cxx_atomic_exchange(__cxx_atomic_base_impl<_Tp> * __a, _Tp __value, memory_order __order) _NO…
1023 _LIBCPP_INLINE_VISIBILITY inline _LIBCPP_CONSTEXPR memory_order __to_failure_order(memory_order __o…
1032 …se_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __f…
1037 …tomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __f…
1043 …se_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __f…
1048 …tomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __f…
1054 _Tp __cxx_atomic_fetch_add(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __delta, memory_order __o…
1059 _Tp __cxx_atomic_fetch_add(__cxx_atomic_base_impl<_Tp> * __a, _Tp __delta, memory_order __order) _N…
1065 …ch_add(__cxx_atomic_base_impl<_Tp*> volatile* __a, ptrdiff_t __delta, memory_order __order) _NOEXC…
1070 _Tp* __cxx_atomic_fetch_add(__cxx_atomic_base_impl<_Tp*> * __a, ptrdiff_t __delta, memory_order __o…
1076 _Tp __cxx_atomic_fetch_sub(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __delta, memory_order __o…
1081 _Tp __cxx_atomic_fetch_sub(__cxx_atomic_base_impl<_Tp> * __a, _Tp __delta, memory_order __order) _N…
1086 …ch_sub(__cxx_atomic_base_impl<_Tp*> volatile* __a, ptrdiff_t __delta, memory_order __order) _NOEXC…
1091 _Tp* __cxx_atomic_fetch_sub(__cxx_atomic_base_impl<_Tp*> * __a, ptrdiff_t __delta, memory_order __o…
1097 _Tp __cxx_atomic_fetch_and(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __pattern, memory_order _…
1102 _Tp __cxx_atomic_fetch_and(__cxx_atomic_base_impl<_Tp> * __a, _Tp __pattern, memory_order __order) …
1108 _Tp __cxx_atomic_fetch_or(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __pattern, memory_order __…
1113 _Tp __cxx_atomic_fetch_or(__cxx_atomic_base_impl<_Tp> * __a, _Tp __pattern, memory_order __order) _…
1119 _Tp __cxx_atomic_fetch_xor(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp __pattern, memory_order _…
1124 _Tp __cxx_atomic_fetch_xor(__cxx_atomic_base_impl<_Tp> * __a, _Tp __pattern, memory_order __order) …
1224 void __cxx_atomic_store(volatile __cxx_atomic_lock_impl<_Tp>* __a, _Tp __val, memory_order) {
1231 void __cxx_atomic_store(__cxx_atomic_lock_impl<_Tp>* __a, _Tp __val, memory_order) {
1239 _Tp __cxx_atomic_load(const volatile __cxx_atomic_lock_impl<_Tp>* __a, memory_order) {
1244 _Tp __cxx_atomic_load(const __cxx_atomic_lock_impl<_Tp>* __a, memory_order) {
1250 _Tp __cxx_atomic_exchange(volatile __cxx_atomic_lock_impl<_Tp>* __a, _Tp __value, memory_order) {
1260 _Tp __cxx_atomic_exchange(__cxx_atomic_lock_impl<_Tp>* __a, _Tp __value, memory_order) {
1271 … _Tp* __expected, _Tp __value, memory_order, memory_order) {
1286 … _Tp* __expected, _Tp __value, memory_order, memory_order) {
1300 _Tp* __expected, _Tp __value, memory_order, memory_order) {
1315 _Tp* __expected, _Tp __value, memory_order, memory_order) {
1329 _Td __delta, memory_order) {
1340 _Td __delta, memory_order) {
1351 ptrdiff_t __delta, memory_order) {
1362 ptrdiff_t __delta, memory_order) {
1373 _Td __delta, memory_order) {
1384 _Td __delta, memory_order) {
1395 _Tp __pattern, memory_order) {
1406 _Tp __pattern, memory_order) {
1417 _Tp __pattern, memory_order) {
1428 _Tp __pattern, memory_order) {
1439 _Tp __pattern, memory_order) {
1450 _Tp __pattern, memory_order) {
1578 memory_order __order;
1587 _LIBCPP_INLINE_VISIBILITY bool __cxx_atomic_wait(_Atp* __a, _Tp const __val, memory_order __order)
1611 void store(_Tp __d, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1615 void store(_Tp __d, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1619 _Tp load(memory_order __m = memory_order_seq_cst) const volatile _NOEXCEPT
1623 _Tp load(memory_order __m = memory_order_seq_cst) const _NOEXCEPT
1631 _Tp exchange(_Tp __d, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1634 _Tp exchange(_Tp __d, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1638 memory_order __s, memory_order __f) volatile _NOEXCEPT
1643 memory_order __s, memory_order __f) _NOEXCEPT
1648 memory_order __s, memory_order __f) volatile _NOEXCEPT
1653 memory_order __s, memory_order __f) _NOEXCEPT
1658 memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1662 memory_order __m = memory_order_seq_cst) _NOEXCEPT
1666 memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1670 memory_order __m = memory_order_seq_cst) _NOEXCEPT
1673 …_LIBCPP_AVAILABILITY_SYNC _LIBCPP_INLINE_VISIBILITY void wait(_Tp __v, memory_order __m = memory_o…
1675 …_LIBCPP_AVAILABILITY_SYNC _LIBCPP_INLINE_VISIBILITY void wait(_Tp __v, memory_order __m = memory_o…
1726 _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1729 _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1732 _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1735 _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1738 _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1741 _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1744 _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1747 _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1750 _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
1753 _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1850 _Tp* fetch_add(ptrdiff_t __op, memory_order __m = memory_order_seq_cst)
1854 _Tp* fetch_add(ptrdiff_t __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1857 _Tp* fetch_sub(ptrdiff_t __op, memory_order __m = memory_order_seq_cst)
1861 _Tp* fetch_sub(ptrdiff_t __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
1952 atomic_store_explicit(volatile atomic<_Tp>* __o, typename atomic<_Tp>::value_type __d, memory_order…
1961 atomic_store_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::value_type __d, memory_order __m) _NO…
1990 atomic_load_explicit(const volatile atomic<_Tp>* __o, memory_order __m) _NOEXCEPT
1999 atomic_load_explicit(const atomic<_Tp>* __o, memory_order __m) _NOEXCEPT
2028 …plicit(volatile atomic<_Tp>* __o, typename atomic<_Tp>::value_type __d, memory_order __m) _NOEXCEPT
2036 atomic_exchange_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::value_type __d, memory_order __m) …
2084 memory_order __s, memory_order __f) _NOEXCEPT
2094 memory_order __s, memory_order __f) _NOEXCEPT
2107 memory_order __s, memory_order __f) _NOEXCEPT
2118 memory_order __s, memory_order __f) _NOEXCEPT
2148 memory_order __m) _NOEXCEPT
2158 memory_order __m) _NOEXCEPT
2245 …(volatile atomic<_Tp>* __o, typename atomic<_Tp>::difference_type __op, memory_order __m) _NOEXCEPT
2257 …_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::difference_type __op, memory_order __m) _NOEXCEPT
2265 …olatile atomic<_Tp*>* __o, typename atomic<_Tp*>::difference_type __op, memory_order __m) _NOEXCEPT
2273 …xplicit(atomic<_Tp*>* __o, typename atomic<_Tp*>::difference_type __op, memory_order __m) _NOEXCEPT
2329 …(volatile atomic<_Tp>* __o, typename atomic<_Tp>::difference_type __op, memory_order __m) _NOEXCEPT
2341 …_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::difference_type __op, memory_order __m) _NOEXCEPT
2349 …olatile atomic<_Tp*>* __o, typename atomic<_Tp*>::difference_type __op, memory_order __m) _NOEXCEPT
2357 …xplicit(atomic<_Tp*>* __o, typename atomic<_Tp*>::difference_type __op, memory_order __m) _NOEXCEPT
2397 …licit(volatile atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m) _NOEXCEPT
2409 atomic_fetch_and_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m…
2449 …licit(volatile atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m) _NOEXCEPT
2461 atomic_fetch_or_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m)…
2501 …licit(volatile atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m) _NOEXCEPT
2513 atomic_fetch_xor_explicit(atomic<_Tp>* __o, typename atomic<_Tp>::value_type __op, memory_order __m…
2525 bool test(memory_order __m = memory_order_seq_cst) const volatile _NOEXCEPT
2528 bool test(memory_order __m = memory_order_seq_cst) const _NOEXCEPT
2532 bool test_and_set(memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
2535 bool test_and_set(memory_order __m = memory_order_seq_cst) _NOEXCEPT
2538 void clear(memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
2541 void clear(memory_order __m = memory_order_seq_cst) _NOEXCEPT
2545 void wait(bool __v, memory_order __m = memory_order_seq_cst) const volatile _NOEXCEPT
2548 void wait(bool __v, memory_order __m = memory_order_seq_cst) const _NOEXCEPT
2606 atomic_flag_test_explicit(const volatile atomic_flag* __o, memory_order __m) _NOEXCEPT
2613 atomic_flag_test_explicit(const atomic_flag* __o, memory_order __m) _NOEXCEPT
2634 atomic_flag_test_and_set_explicit(volatile atomic_flag* __o, memory_order __m) _NOEXCEPT
2641 atomic_flag_test_and_set_explicit(atomic_flag* __o, memory_order __m) _NOEXCEPT
2662 atomic_flag_clear_explicit(volatile atomic_flag* __o, memory_order __m) _NOEXCEPT
2669 atomic_flag_clear_explicit(atomic_flag* __o, memory_order __m) _NOEXCEPT
2691 bool __v, memory_order __m) _NOEXCEPT
2699 bool __v, memory_order __m) _NOEXCEPT
2736 atomic_thread_fence(memory_order __m) _NOEXCEPT
2743 atomic_signal_fence(memory_order __m) _NOEXCEPT