From 13449c3de45111d21a1a7dc4df8be1c29bff6447 Mon Sep 17 00:00:00 2001 From: Nick Desaulniers Date: Mon, 16 Dec 2024 15:17:18 -0800 Subject: [PATCH] [libc][docs] split up platform and arch support (#120125) Creates a new toctree "Support" under which we have distinct links to arch, platform, and compiler support. * Moved "Platform Support" from index landing page to new doc. * Created explicit "Architecture Support". Requested in https://github.com/llvm/llvm-project/issues/118964#issuecomment-2531503046. * Moved "Compiler Support" from Status toctree to new Support toctree. --------- Co-authored-by: Carlo Cabrera --- libc/docs/arch_support.rst | 19 +++++++++++++++++++ libc/docs/index.rst | 28 +++++++++------------------- libc/docs/platform_support.rst | 22 ++++++++++++++++++++++ 3 files changed, 50 insertions(+), 19 deletions(-) create mode 100644 libc/docs/arch_support.rst create mode 100644 libc/docs/platform_support.rst diff --git a/libc/docs/arch_support.rst b/libc/docs/arch_support.rst new file mode 100644 index 00000000000000..6ab0486c7ea22f --- /dev/null +++ b/libc/docs/arch_support.rst @@ -0,0 +1,19 @@ +Architecture Support +==================== + +The currently continuously tested architectures are: + +* aarch64 +* amdgpu +* arm +* nvptx +* riscv32 +* riscv64 +* x86_64 + +i386 support is [in the works](https://github.com/llvm/llvm-project/issues/93709). + +See "`Bringup on a New OS or Architecture `__" for more +information. Please do first file a bug in +`our issue tracker `__ before +starting a port that you plan to upstream. diff --git a/libc/docs/index.rst b/libc/docs/index.rst index c1fa4bb0f31468..0cbf75f5e0ef2d 100644 --- a/libc/docs/index.rst +++ b/libc/docs/index.rst @@ -35,24 +35,6 @@ LLVM-libc aspires to a unique place in the software ecosystem. The goals are: algorithms. - `Fuzzing `__ -Platform Support -================ - -Most development is currently targeting Linux on x86_64, aarch64, arm, and -RISC-V. Embedded/baremetal targets are supported on arm and RISC-V, and Windows -and MacOS have limited support (may be broken). The Fuchsia platform is -slowly replacing functions from its bundled libc with functions from this -project. - -LLVM-libc does not guarantee backward compatibility with operating systems that have reached their EOL. -Compatibility patches for obsolete operating systems will not be accepted. - -For Linux, we support kernel versions as listed on `kernel.org `_, including -``longterm`` (not past EOL date), ``stable``, and ``mainline`` versions. We actively adopt new features -from ``linux-next``. - -For Windows, we plan to support products within their lifecycle. Please refer to -`Search Product and Services Lifecycle Information `_ for more information. .. toctree:: :hidden: @@ -70,10 +52,18 @@ For Windows, we plan to support products within their lifecycle. Please refer to :maxdepth: 1 :caption: Status - compiler_support headers/index.rst c23 +.. toctree:: + :hidden: + :maxdepth: 1 + :caption: Support + + arch_support + platform_support + compiler_support + .. toctree:: :hidden: :maxdepth: 1 diff --git a/libc/docs/platform_support.rst b/libc/docs/platform_support.rst new file mode 100644 index 00000000000000..2ce3d7282b304f --- /dev/null +++ b/libc/docs/platform_support.rst @@ -0,0 +1,22 @@ +Platform Support +================ + +Development is currently mostly focused on Linux. MacOS and Windows has +partial support, but has bitrot and isn't being tested continuously. + +LLVM-libc is currently being integrated into Android and Fuchsia operating +systems via `overlay mode `__. + +For Linux, we support kernel versions as listed on +`kernel.org `_, including ``longterm`` (not past EOL +date), ``stable``, and ``mainline`` versions. We actively adopt new features +from ``linux-next``. + +For Windows, we plan to support products within their lifecycle. Please refer to +`Search Product and Services Lifecycle Information `_ for more information. + +LLVM-libc does not guarantee backward compatibility with operating systems that +have reached their EOL. Compatibility patches for obsolete operating systems +will not be accepted. + +For GPU, reference `our GPU docs `__.