This is supported on x86-64 and target feature
sse
only.Expand description
Shuffles packed single-precision (32-bit) floating-point elements in a
and
b
using MASK
.
The lower half of result takes values from a
and the higher half from
b
. Mask is split to 2 control bits each to index the element from inputs.
Note that there appears to be a mistake within Intel’s Intrinsics Guide.
_mm_shuffle_ps
is supposed to take an i32
instead of a u32
as is the case for other shuffle intrinsics.
Performing an implicit type conversion between an unsigned integer and a signed integer
does not cause a problem in C, however Rust’s commitment to strong typing does not allow this.