llvm-project/libcxx/utils
Louis Dionne 92832e4889 [libc++] Enable <atomic> when threads are disabled
std::atomic is, for the most part, just a thin veneer on top of compiler
builtins. Hence, it should be available even when threads are not available
on the system, and in fact there has been requests for such support.

This patch:
- Moves __libcpp_thread_poll_with_backoff to its own header so it can
  be used in <atomic> when threads are disabled.
- Adds a dummy backoff policy for atomic polling that doesn't know about
  threads.
- Adjusts the <atomic> feature-test macros so they are provided even when
  threads are disabled.
- Runs the <atomic> tests when threads are disabled.

rdar://77873569

Differential Revision: https://reviews.llvm.org/D114109
2021-11-17 23:02:58 -05:00
..
ci [libcxx] [ci] Add CI configurations for MinGW 2021-11-17 10:00:50 +02:00
gdb/libcxx [libc++][NFC] Resolve Python 2 FIXME 2021-11-12 13:55:22 -05:00
google-benchmark Revert "Reland "[benchmarks] Move libcxx's fork of google/benchmark and llvm/utils'""" 2021-11-16 16:35:06 -08:00
libcxx [libcxx] [Coroutine] Conform Coroutine Implementation 2021-11-16 14:13:13 +08:00
symcheck-blacklists
CMakeLists.txt [libc++][NFC] Make private header generation CMake comment more consistent 2021-07-29 14:17:04 -04:00
cat_files.py Update more file headers across all of the LLVM projects in the monorepo 2019-01-19 10:56:40 +00:00
generate_abi_list.py generate_header_tests.py: Sort the header files ASCIIbetically. 2020-12-14 09:56:07 -05:00
generate_feature_test_macro_components.py [libc++] Enable <atomic> when threads are disabled 2021-11-17 23:02:58 -05:00
generate_header_inclusion_tests.py [libc++] Enable <atomic> when threads are disabled 2021-11-17 23:02:58 -05:00
generate_header_tests.py [libc++] Enable <atomic> when threads are disabled 2021-11-17 23:02:58 -05:00
generate_private_header_tests.py [libc++] [test] Remove "// -*- C++ -*-" comments from generated .cpp files. 2021-10-01 12:04:19 -04:00
graph_header_deps.py [libc++] graph_header_deps.py: Detect files that include themselves. 2021-06-30 17:37:43 -04:00
merge_archives.py Remove unused imports. 2021-08-17 13:04:02 -07:00
run.py [libc++] Fix codesigning in run.py 2021-04-01 13:39:49 -04:00
ssh.py [libc++][NFC] Resolve Python 2 FIXME 2021-11-12 13:55:22 -05:00
sym_diff.py Update more file headers across all of the LLVM projects in the monorepo 2019-01-19 10:56:40 +00:00