Commit 468a01a
committed
Tweak names of wasm SIMD intrinsics
The original intention of wasm SIMD support was to very closely match
the spec 1:1 to provide low-level primitives. Over time though this has
become less appealing and "niceties" such as `i64x2_shuffle` have been
added instead of only giving users `i8x16_shuffle` (same thing for
`*_const` functions).
This commit goes through and gives special treatment to all SIMD
intrinsics and instructions for wasm. This performs changes such as:
* All `*_u` and `*_s` suffixes are now baked into the intrinsic type,
e.g. changing `i16x8` to `u16x8` where appropriate.
* `*_const` functions have been added for unsigned types
* `*_replace_lane` functions have been added for unsigned types
* `*_extract_lane` functions have been added for unsigned types
While I think it makes sense at the wasm simd spec layer that all these
instructions have the names they do, I've concluded that at the Rust
layer we'll want more understandable names since they're so easy to bind
and are easier to understand when reading/writing code.1 parent 6495bb0 commit 468a01a
1 file changed
Lines changed: 500 additions & 268 deletions
0 commit comments