summaryrefslogtreecommitdiff
path: root/Documentation/rust/arch-support.rst
blob: 4d1495ded2aac7ce7af5b47f85ad3367f0d1c53e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
.. SPDX-License-Identifier: GPL-2.0

Arch Support
============

Currently, the Rust compiler (``rustc``) uses LLVM for code generation,
which limits the supported architectures that can be targeted. In addition,
support for building the kernel with LLVM/Clang varies (please see
Documentation/kbuild/llvm.rst). This support is needed for ``bindgen``
which uses ``libclang``.

Below is a general summary of architectures that currently work. Level of
support corresponds to ``S`` values in the ``MAINTAINERS`` file.

=============  ================  ==============================================
Architecture   Level of support  Constraints
=============  ================  ==============================================
``arm64``      Maintained        Little Endian only.
``loongarch``  Maintained        -
``riscv``      Maintained        ``riscv64`` only.
``um``         Maintained        ``x86_64`` only.
``x86``        Maintained        ``x86_64`` only.
=============  ================  ==============================================