_mm_mask_ternarylogic_epi32 in core::arch::x86 - Rust
Description: Bitwise ternary logic that provides the capability to implement any three-operand binary function; the specific binary function is specified by value in imm8. For each bit in each packed 32-bit integer, the corresponding bit from src, a, and b are used to form a 3 bit index into imm8, and the value at that bit in imm8 is written to the corresponding bit in dst using writemask k at 32-bit granularity (32-bit elements are copied from src when the corresponding mask bit is not set).
Keywords: rust, rustlang, rust-lang, _mm_mask_ternarylogic_epi32

# Function core::arch::x86::_mm_mask_ternarylogic_epi32
[−][src]

    pub unsafe fn _mm_mask_ternarylogic_epi32(
        src: __m128i,
        k: __mmask8,
        a: __m128i,
        b: __m128i,
        imm8: i32
    ) -> __m128i

🔬 This is a nightly-only experimental API. (`stdsimd` #48556)
This is supported on x86 and target feature `avx512f,avx512vl` only.

Bitwise ternary logic that provides the capability to implement any three-operand binary function; the specific binary function is specified by value in imm8. For each bit in each packed 32-bit integer, the corresponding bit from src, a, and b are used to form a 3 bit index into imm8, and the value at that bit in imm8 is written to the corresponding bit in dst using writemask k at 32-bit granularity (32-bit elements are copied from src when the corresponding mask bit is not set).

Intel’s documentation