CMSE calling conventions
Support for the cmse-nonsecure-entry and cmse-nonsecure-call calling conventions on ArmV8m (thumbv8*) targets, and a lint preventing (partially) uninitialized values from crossing the security boundary.
extern "cmse-nonsecure-entry" fn entry(callback: extern "cmse-nonsecure-call" fn(_: u64)) {
callback(42);
}
The implementation is tracked in:
- https://github.com/rust-lang/rust/issues/75835
- https://github.com/rust-lang/rust/issues/81391
- https://github.com/rust-lang/rust/pull/147697
[!IMPORTANT]
When responding to RFCs, try to use inline review comments (it is possible to leave an inline review comment for the entire file at the top) instead of direct comments for normal comments and keep normal comments for procedural matters like starting FCPs.This keeps the discussion more organized.
@rustbot label +T-lang
This has now been reviewed by several people from the rust embedded community and from Arm, so I think this is ready for T-lang to take a look.
@rustbot label +I-lang-nominated