Stabilize LoongArch64 SIMD Intrinsics - #2221
Conversation
|
r? @folkertdev rustbot has assigned @folkertdev. Use Why was this reviewer chosen?The reviewer was selected based on:
|
| #[inline] | ||
| #[target_feature(enable = "lasx")] | ||
| #[unstable(feature = "stdarch_loongarch", issue = "117427")] | ||
| #[stable(feature = "stdarch_loongarch_simd", since = "CURRENT_RUSTC_VERSION")] | ||
| pub fn lasx_xvsrar_b(a: m256i, b: m256i) -> m256i { | ||
| unsafe { transmute(__lasx_xvsrar_b(transmute(a), transmute(b))) } | ||
| } |
There was a problem hiding this comment.
What's the reason for changing the feature name?
There was a problem hiding this comment.
What's the reason for changing the feature name?
There are also some unstable APIs gated by stdarch_loongarch. Having both stable and unstable APIs gated by the same feature name causes the following error:
error[E0711]: feature `stdarch_loongarch` is declared stable, but was previously declared unstable
Also, putting the SIMD intrinsics under stdarch_loongarch_simd makes the categorization more explicit, similar to stdarch_loongarch_crc.
|
Note that this stabilizes more cases of Nominating since that's probably worth clarifying, and also this is a lot of surface area with potential sharp edges. @rustbot label +I-libs-nominated |
|
Error: The feature Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip. |
Thanks for pointing this out. As far as I know, no projects currently depend on the LoongArch SIMD API signatures using the |
5f1c38d to
bc04e14
Compare
|
|
Tracking issue: rust-lang/rust#162508
LoongArch64 SIMD intrinsics are already used by rustc itself and by a number of downstream projects. Experience from these real-world uses indicates that the API is ready for stabilization. Stabilizing the intrinsics would remove the nightly requirement for applications that currently depend on them.
API surface
Note for subtree update
Remove this line: https://github.com/rust-lang/rust/blob/1edd55dcfcd573872c727fa3e086369a71661ee0/compiler/rustc_span/src/lib.rs#L20