Lines Matching defs:atomic_flag
28 struct atomic_flag {
73 _LIBCPP_HIDE_FROM_ABI constexpr atomic_flag() _NOEXCEPT : __a_(false) {}
75 atomic_flag() _NOEXCEPT = default;
78 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR atomic_flag(bool __b) _NOEXCEPT : __a_(__b) {} // EXTENSION
80 atomic_flag(const atomic_flag&) = delete;
81 atomic_flag& operator=(const atomic_flag&) = delete;
82 atomic_flag& operator=(const atomic_flag&) volatile = delete;
86 struct __atomic_waitable_traits<atomic_flag> {
87 static _LIBCPP_HIDE_FROM_ABI _LIBCPP_ATOMIC_FLAG_TYPE __atomic_load(const atomic_flag& __a, memory_order __order) {
92 __atomic_load(const volatile atomic_flag& __a, memory_order __order) {
97 __atomic_contention_address(const atomic_flag& __a) {
102 __atomic_contention_address(const volatile atomic_flag& __a) {
107 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test(const volatile atomic_flag* __o) _NOEXCEPT { return __o->test(); }
109 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test(const atomic_flag* __o) _NOEXCEPT { return __o->test(); }
112 atomic_flag_test_explicit(const volatile atomic_flag* __o, memory_order __m) _NOEXCEPT {
116 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test_explicit(const atomic_flag* __o, memory_order __m) _NOEXCEPT {
120 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test_and_set(volatile atomic_flag* __o) _NOEXCEPT {
124 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test_and_set(atomic_flag* __o) _NOEXCEPT { return __o->test_and_set(); }
127 atomic_flag_test_and_set_explicit(volatile atomic_flag* __o, memory_order __m) _NOEXCEPT {
131 inline _LIBCPP_HIDE_FROM_ABI bool atomic_flag_test_and_set_explicit(atomic_flag* __o, memory_order __m) _NOEXCEPT {
135 inline _LIBCPP_HIDE_FROM_ABI void atomic_flag_clear(volatile atomic_flag* __o) _NOEXCEPT { __o->clear(); }
137 inline _LIBCPP_HIDE_FROM_ABI void atomic_flag_clear(atomic_flag* __o) _NOEXCEPT { __o->clear(); }
139 inline _LIBCPP_HIDE_FROM_ABI void atomic_flag_clear_explicit(volatile atomic_flag* __o, memory_order __m) _NOEXCEPT {
143 inline _LIBCPP_HIDE_FROM_ABI void atomic_flag_clear_explicit(atomic_flag* __o, memory_order __m) _NOEXCEPT {
148 atomic_flag_wait(const volatile atomic_flag* __o, bool __v) _NOEXCEPT {
153 atomic_flag_wait(const atomic_flag* __o, bool __v) _NOEXCEPT {
158 atomic_flag_wait_explicit(const volatile atomic_flag* __o, bool __v, memory_order __m) _NOEXCEPT {
163 atomic_flag_wait_explicit(const atomic_flag* __o, bool __v, memory_order __m) _NOEXCEPT {
168 atomic_flag_notify_one(volatile atomic_flag* __o) _NOEXCEPT {
173 atomic_flag_notify_one(atomic_flag* __o) _NOEXCEPT {
178 atomic_flag_notify_all(volatile atomic_flag* __o) _NOEXCEPT {
183 atomic_flag_notify_all(atomic_flag* __o) _NOEXCEPT {