Stabilize Arm64EC inline assembly by taiki-e · Pull Request #131781 · rust-lang/rust (original) (raw)

This stabilizes inline assembly for Arm64EC ("Emulation Compatible").

Corresponding reference PR: rust-lang/reference#1653


From the requirements of stabilization mentioned in #93335

Each architecture needs to be reviewed before stabilization:

Done in #131332.

This is possible from the time of the initial implementation.

The registers available in this target are a subset of those available in the AArch64 inline assembly which is already stable.

The following registers cannot be used in Arm64EC compared to AArch64:

These are disallowed by the ABI (see also abi docs for reg/vreg and #131332 (comment) for preg).

Although not listed in the above requirements, preserves_flags is also implemented and the same as AArch64.


cc @dpaoliello

r? @Amanieu

@rustbot label O-windows O-AArch64 +A-inline-assembly +T-lang -T-compiler +needs-fcp