# Function core::arch::x86::_mm_mask_dbsad_epu8

source · [−]

    pub unsafe fn _mm_mask_dbsad_epu8(
        src: __m128i,
        k: __mmask8,
        a: __m128i,
        b: __m128i,
        const IMM8: i32
    ) -> __m128i

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

Compute the sum of absolute differences (SADs) of quadruplets of unsigned 8-bit integers in a compared to those in b, and store the 16-bit results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set). Four SADs are performed on four 8-bit quadruplets for each 64-bit lane. The first two SADs use the lower 8-bit quadruplet of the lane from a, and the last two SADs use the uppper 8-bit quadruplet of the lane from a. Quadruplets from b are selected from within 128-bit lanes according to the control in imm8, and each SAD in each 64-bit lane uses the selected quadruplet at 8-bit offsets.

Intel’s documentation