stdarch
stdarch copied to clipboard
Stabilize Wasm relaxed SIMD
This is for https://github.com/rust-lang/rust/pull/117468, which has to be accepted (but not merged) first before this can be merged.
I also changed some functions to use the proper LLVM instructions instead of their aliases, see #1396. Additionally I added aliases to unsigned variants when appropriate (as is done in SIMD128).
Fixes #1396. ~~Depends on #1523.~~
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @Amanieu (or someone else) soon.
This is currently based on #1523.
Rebased onto master
after #1523 was merged.
@Amanieu I believe the current CI failure is not coming from this PR? https://github.com/rust-lang/stdarch/actions/runs/7903504132/job/21571575006?pr=1494
This should fix itself when https://github.com/rust-lang/rust/pull/121088 is merged.
I've put up https://github.com/rust-lang/stdarch/pull/1528 for the aarch64 failure.
I just noticed that there's a bunch of (aliased) "intrinsics" seemingly missing such as u8x16_relaxed_swizzle
. Those should probably be added before stabilizing.
I just noticed that there's a bunch of (aliased) "intrinsics" seemingly missing such as
u8x16_relaxed_swizzle
. Those should probably be added before stabilizing.
Do you mean adding u8x16_relaxed_swizzle
but aliasing it internally to i8x16.relaxed_swizzle
? Is that a thing that's done?
Yeah that's done for the normal swizzle for example. And many other instructions.