Local patch to revert "[libc++] Don't implement <stdatomic.h> before C++23 (#123130)"

Test: presubmit
Bug: 391067713
Change-Id: If4ea5d6c85575b391f3c844ff81cbd080c123d0b
2 files changed
tree: 9636dd33926bfa55518883b1caaa0cc96d0f52b8
  1. docker/
  2. docs/
  3. kernel-boot-tests/
  4. kokoro/
  5. orderfiles/
  6. patches/
  7. src/
  8. test/
  9. .gitignore
  10. __init__.py
  11. android_llvm_next_flags.go
  12. bisect_build.py
  13. bisect_driver.py
  14. BUILD.md
  15. build.py
  16. cherrypick_cl.py
  17. cherrypick_cl_hook.py
  18. clang-tidy.sh
  19. context.py
  20. do_build.py
  21. do_kythe_xref.py
  22. do_test_compiler.py
  23. fetch_kokoro_prebuilts.py
  24. kythe_vnames.json
  25. kythe_xref.py
  26. merge_from_upstream.py
  27. MODULE_LICENSE_APACHE2
  28. MODULE_LICENSE_BSD_LIKE
  29. MODULE_LICENSE_MIT
  30. OWNERS
  31. PREUPLOAD.cfg
  32. py3_utils.py
  33. pylintrc
  34. README.md
  35. remove-prebuilts.py
  36. test_compiler.py
  37. trim_patch_data.py
  38. update-binutils.py
  39. update-clang-stable.py
  40. update-kernel-toolchain.py
  41. update-prebuilts.py
README.md

Android Clang/LLVM Toolchain

Quick links:

Android's clang toolchain is used to build the Android platform, kernel and is also part of the Android NDK. It also builds various tools and projects in the Android ecosystem. See this page for a list of current versions used by various projects.

Android clang follows a rolling release schedule based on upstream llvm-project's main branch. It does not correspond to a numbered llvm-project release branch.

Clang Version

Each clang prebuilt directory has a clang_source_info.md (starting with clang-r428724) that mentions the llvm-project commit from which this version is branched. It also lists cherry-picks from upstream LLVM and downstream changes needed to qualify this prebuilt for the various Android use cases.

Update Schedule

At any point of time, there is an in-progress attempt to release a new clang. Due to the complexity of the Android code base and breaking changes from llvm-project, there is no guaranteed schedule or cadence in clang updates.

In practice, there have been an average of 3-4 updates a year (rougly new clang every 3-4 months) for the past several years.

Subscribe to https://groups.google.com/g/android-llvm to get notified when a clang version is planned and when it is released.

Android Clang Development

Android clang development happens in the llvm-toolchain repo branch in AOSP. See here for build instructions.

aosp-llvm-toolchain is the public CI build of Android clang toolchain.

clang binaries from this CI branch are checked into three platform-specific projects: