Empty commit to trigger build am: 24c277113a

Original change: https://android-review.googlesource.com/c/toolchain/llvm_android/+/3559065

Change-Id: I7ba393bb439b46a20fe469a57da61018b66302b1
Signed-off-by: Automerger Merge Worker <[email protected]>
tree: e3911b8b2d70b01075eba1b10f978343f685ef43
  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. dispatch.py
  21. do_build.py
  22. do_dispatch.py
  23. do_kythe_xref.py
  24. do_test_compiler.py
  25. fetch_kokoro_prebuilts.py
  26. kythe_vnames.json
  27. kythe_xref.py
  28. merge_from_upstream.py
  29. MODULE_LICENSE_APACHE2
  30. MODULE_LICENSE_BSD_LIKE
  31. MODULE_LICENSE_MIT
  32. OWNERS
  33. PREUPLOAD.cfg
  34. py3_utils.py
  35. pylintrc
  36. README.md
  37. remove-prebuilts.py
  38. test_compiler.py
  39. trim_patch_data.py
  40. update-binutils.py
  41. update-clang-stable.py
  42. update-kernel-toolchain.py
  43. 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: