- Feature Name:
project-inline-asm
- Start Date: 2019-12-07
- RFC PR: rust-lang/rfcs#2836
- Rust Issue: rust-lang/rust#29722
Summary
To create a project group with the purpose of designing
Motivation
In systems programming some tasks require dropping down to the assembly level. The primary
The inline assembler syntax
Project group details
Initial
Lang team liaisons:
Charter
The main goal of the asm project group is to designasm!
macro using a syntax
The project group has the following additional
- to provide a transition path for existing users of the unstable
asm!
macro. - to ensure保証するthat the chosen
asm!
syntax文法is portable to different compiler backends such as LLVM, GCC, etc. - to provide a fallback implementation実装on compiler backends that do not support inline assembly natively (e.g. Cranelift).
- to initially support most major architectures (x86, ARM, RISC-V) with the intention of extending拡張するto other architectures in the future.
With a lower
- support for module-level assembly (
global_asm!
). - support for naked functions (
#[naked]
).