_mm256_mask_dpbusd_epi32 in core::arch::x86_64 - Rust
Description: Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in a with corresponding signed 8-bit integers in b, producing 4 intermediate signed 16-bit results. Sum these 4 results with the corresponding 32-bit integer in src, and store the packed 32-bit results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).

# Function core::arch::x86_64::_mm256_mask_dpbusd_epi32

source ·

    pub unsafe fn _mm256_mask_dpbusd_epi32(
        src: __m256i,
        k: __mmask8,
        a: __m256i,
        b: __m256i
    ) -> __m256i

🔬This is a nightly-only experimental API. (`stdsimd` #48556)
Available on (x86 or x86-64) and target feature `avx512vnni,avx512vl` and x86-64 only.
Expand description

Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in a with corresponding signed 8-bit integers in b, producing 4 intermediate signed 16-bit results. Sum these 4 results with the corresponding 32-bit integer in src, and store the packed 32-bit results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).

Intel’s documentation