_mm256_mask_range_ps in core::arch::x86 - Rust
Description: Calculate the max, min, absolute max, or absolute min (depending on control in imm8) for packed single-precision (32-bit) floating-point elements in a and b, and store the results in dst using writemask k (elements are copied from src to dst if the corresponding mask bit is not set). Lower 2 bits of IMM8 specifies the operation control: 00 = min, 01 = max, 10 = absolute min, 11 = absolute max. Upper 2 bits of IMM8 specifies the sign control: 00 = sign from a, 01 = sign from compare result, 10 = clear sign bit, 11 = set sign bit.

Skip to main content

## _mm256_mask_range_ps

# Function _mm256_mask_range_ps

1.89.0 · Source

    pub fn _mm256_mask_range_ps(
        src: __m256,
        k: __mmask8,
        a: __m256,
        b: __m256,
        const IMM8: i32,
    ) -> __m256

Available on x86 and (x86 or x86-64) and target feature `avx512dq` and target feature `avx512vl` only.
Expand description

Calculate the max, min, absolute max, or absolute min (depending on control in imm8) for packed single-precision (32-bit) floating-point elements in a and b, and store the results in dst using writemask k (elements are copied from src to dst if the corresponding mask bit is not set). Lower 2 bits of IMM8 specifies the operation control: 00 = min, 01 = max, 10 = absolute min, 11 = absolute max. Upper 2 bits of IMM8 specifies the sign control: 00 = sign from a, 01 = sign from compare result, 10 = clear sign bit, 11 = set sign bit.

Intel’s Documentation