Rust is an efficient (on par with C++) system level language with a rich type system that is heavily focused on memory-safety, thread-safety and data ownership. It does not have a garbage collector, hence is well suited for embedded hardware. In practice it means that the engineer will be normally fighting the Rust LLVM front end compiler and its checks/analysis instead of using GDB at program runtime like in C/C++ development cycle - which is arguably a better way for finding out severe software bugs. The CHERI forks complement the language’s own and language specific security features by replacing traditional pointers with new data type at the hardware level - the capability.

Project Home: Currently there are two projects that add CHERI support to the Rust compiler

Downloads & Documentation

Fork VersionBased on Upstream VersionTargetReference SpecDownloadDocumentation
HEAD
2026-01-19
1.92.0
2025-12-11
CHERIoTCHERIoT ISA v1.0Source
b3d65cc
2025-09-15
1.72.1
2024-08-24
aarch64, aarch64cARM Morellolinux/x86Release Notes Source
One can download artefacts for the Morello University of Kent 1.72.1 Rust project via the release section in github

Project Status

In 2023 work bringing in Rust support to the ARM Morello was done at University of Kent and published at https://github.com/kent-weak-memory/rust - it was based on Rust 1.72.1, so it is a dated version at this point (as upstream is 1.93), it also requires an old build of Morello LLVM. The authors point out that the compiler is fully tested but is still experimental and one should expect bugs. The maintenance and support shall be limited on this project.

In 2025 new funding was announced for bringing in Rust to the CHERIoT platform, work to be done by SCI Semiconductor, but in collaboration with previous project owners from the Univeristy of Kent. It shall add extensions specific to CHERIoT but the goal is to be compatible with any CHERI enabled LLVM back end (so this would enable for potential RVY support in the future as well), the project lives at https://github.com/CHERIoT-Platform/cheri-rust.

For the foresable future CHERIoT is where most of Rust development shall take place. The codebase shall track the main and beta branches from upstream, so the goal is to be in sync with upstream, which is very nice, we like.

Building from Source

For instructions on building the Morello 1.72.1 Rust project see instructions in the github repo at https://github.com/kent-weak-memory/rust

For instructions on building the CHERIoT Rust project see instruction is their github repo at https://github.com/CHERIoT-Platform/cheri-rust

We might (and want) write a blogpost in the future on Rust in CHERIoT, so watch this space.

Get Involved

Development for this project happens in the following places:

There are no regular meetings held at this moment.

Something missing, incorrect?

This page was last updated on 27th January 2026. Please let us know of any corrections via support@thecapablehub.org, alternatively raise a GitHub pull request in our repo.