simd_masked_load in core::intrinsics::simd - Rust
Description: Reads a vector of pointers.

## simd_masked_load

# Function simd_masked_load

Source

    pub const unsafe fn simd_masked_load<V, U, T, const ALIGN: SimdAlign>(
        mask: V,
        ptr: U,
        val: T,
    ) -> T

🔬This is a nightly-only experimental API. (`core_intrinsics`)
Expand description

Reads a vector of pointers.

`T` must be a vector.

`U` must be a pointer to the element type of `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 offset from `ptr`. The first element is loaded from `ptr`, the second from `ptr.wrapping_offset(1)` and so on. Otherwise if the corresponding value in `mask` is `0`, return the corresponding value from `val`.

## §Safety

`ptr` must be aligned according to the `ALIGN` parameter, see `SimdAlign` for details.

`mask` must only contain `0` or `!0` values.