724a75ac95
This commit provides the build flags for Rust for AArch64. The core Rust support already in the kernel does the rest. This enables the PAC ret and BTI options in the Rust build flags to match the options that are used when building C. The Rust samples have been tested with this commit. Signed-off-by: Jamie Cunliffe <Jamie.Cunliffe@arm.com> Acked-by: Will Deacon <will@kernel.org> Tested-by: Dirk Behme <dirk.behme@de.bosch.com> Tested-by: Boqun Feng <boqun.feng@gmail.com> Acked-by: Miguel Ojeda <ojeda@kernel.org> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Alice Ryhl <aliceryhl@google.com> Tested-by: Fabien Parent <fabien.parent@linaro.org> Link: https://lore.kernel.org/r/20231020155056.3495121-3-Jamie.Cunliffe@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
24 lines
990 B
ReStructuredText
24 lines
990 B
ReStructuredText
.. 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 -
|
|
``um`` Maintained ``x86_64`` only.
|
|
``x86`` Maintained ``x86_64`` only.
|
|
============= ================ ==============================================
|
|
|