summaryrefslogtreecommitdiff
path: root/Documentation/rust/arch-support.rst
blob: bcc92cae11d977f4aabb788c38f3e28248f039ce (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
.. 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
============  ================  ==============================================
``arm``       Maintained        ``armv6`` and compatible only.
``arm64``     Maintained        None.
``powerpc``   Maintained        ``ppc64le`` only.
``riscv``     Maintained        ``riscv64`` only.
``x86``       Maintained        ``x86_64`` only.
============  ================  ==============================================