Skip to content

Commit 750cb89

Browse files
[libc][docs] Refresh landing page (#120122)
- Replace section on ABI Compatibility with a rephrased warning at the top of the page. - Add links to the Note. - Update C and POSIX standards. - Inline link to fuzzing.
1 parent 9ee454a commit 750cb89

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

libc/docs/index.rst

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,24 @@
22
The LLVM C Library
33
==================
44

5+
.. warning::
6+
LLVM-libc is not yet ABI stable; currently only static linking is supported.
7+
LLVM-libc developers retain the right to modify the ABI of types used
8+
throughout the library. Another libc should be preferred if ABI stability is
9+
a requirement.
10+
511
.. note::
612
LLVM-libc is not fully complete right now. Some programs may fail to build due
7-
to missing functions (especially C++ ones). If you would like to help us
8-
finish LLVM-libc, check out "Contributing to the libc project" in the sidebar
9-
or ask on discord.
13+
to missing functions. If you would like to help us finish LLVM-libc, check
14+
out "`Contributing to the libc project <contributing.html>`__" in the sidebar
15+
or ask on `discord <https://discord.com/channels/636084430946959380/636732994891284500>`__.
1016

1117
Introduction
1218
============
1319

1420
LLVM-libc aspires to a unique place in the software ecosystem. The goals are:
1521

16-
- Fully compliant with current C standards (C17 and upcoming C2x) and POSIX.
22+
- Fully compliant with current C23 and POSIX.1-2024 standards.
1723
- Easily decomposed and embedded: Supplement or replace system C library
1824
functionality easily. This is useful to get consistent math precision across
1925
systems, or updated memory operations for newer microarchitectures. These
@@ -27,9 +33,7 @@ LLVM-libc aspires to a unique place in the software ecosystem. The goals are:
2733
libc functions.
2834
- A complete testsuite that tests both the public interface and internal
2935
algorithms.
30-
- `Fuzzing`__
31-
32-
.. __: https://github.com/llvm/llvm-project/tree/main/libc/fuzzing
36+
- `Fuzzing <https://github.com/llvm/llvm-project/tree/main/libc/fuzzing>`__
3337

3438
Platform Support
3539
================
@@ -50,13 +54,6 @@ from ``linux-next``.
5054
For Windows, we plan to support products within their lifecycle. Please refer to
5155
`Search Product and Services Lifecycle Information <https://learn.microsoft.com/en-us/lifecycle/products/?products=windows>`_ for more information.
5256

53-
ABI Compatibility
54-
=================
55-
56-
The libc is written to be ABI independent. Interfaces are generated using
57-
headergen, so supporting arbitrary ABIs is possible. In it's initial
58-
stages there is no ABI stability in any form.
59-
6057
.. toctree::
6158
:hidden:
6259
:maxdepth: 2

0 commit comments

Comments
 (0)