Function core::intrinsics::simd::simd_masked_load
source · pub unsafe extern "platform-intrinsic" fn simd_masked_load<V, U, T>(
mask: V,
ptr: U,
val: T
) -> T
🔬This is a nightly-only experimental API. (
core_intrinsics
)Expand description
Read a vector of pointers.
T
must be a vector.
U
must be a vector of pointers to the element type of T
, with the same length as T
.
V
must be a vector of integers with the same length as T
(but any element size).
For each element, if the corresponding value in mask
is !0
, read the corresponding
pointer from ptr
.
Otherwise if the corresponding value in mask
is 0
, return the corresponding value from
val
.
Safety
Unmasked values in T
must be readable as if by <ptr>::read
(e.g. aligned to the element
type).
mask
must only contain 0
or !0
values.