pub unsafe fn _mm_fcmadd_round_sch<const ROUNDING: i32>(
a: __m128h,
b: __m128h,
c: __m128h,
) -> __m128h
🔬This is a nightly-only experimental API. (
stdarch_x86_avx512_f16
)Available on x86 only.
Expand description
Multiply the lower complex number in a by the complex conjugate of the lower complex number in b,
accumulate to the lower complex number in c, and store the result in the lower elements of dst,
and copy the upper 6 packed elements from a to the upper elements of dst. Each complex number is
composed of two adjacent half-precision (16-bit) floating-point elements, which defines the complex
number complex = vec.fp16[0] + i * vec.fp16[1]
, or the complex conjugate conjugate = vec.fp16[0] - i * vec.fp16[1]
.
Rounding is done according to the rounding parameter, which can be one of:
_MM_FROUND_TO_NEAREST_INT
|_MM_FROUND_NO_EXC
: round to nearest and suppress exceptions_MM_FROUND_TO_NEG_INF
|_MM_FROUND_NO_EXC
: round down and suppress exceptions_MM_FROUND_TO_POS_INF
|_MM_FROUND_NO_EXC
: round up and suppress exceptions_MM_FROUND_TO_ZERO
|_MM_FROUND_NO_EXC
: truncate and suppress exceptions_MM_FROUND_CUR_DIRECTION
: useMXCSR.RC
- see_MM_SET_ROUNDING_MODE