[−][src]Function safe_arch::fused_mul_neg_sub_m128d_s
#[must_use]pub fn fused_mul_neg_sub_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
This is supported with target feature
fma
only.Low lane fused -(a * b) - c
, other lanes unchanged.
let a = m128d::from_array([2.0, 3.0]); let b = m128d::from_array([4.0, 5.0]); let c = m128d::from_array([1.0, 1.0]); let d = fused_mul_neg_sub_m128d_s(a, b, c).to_array(); assert_eq!(d, [-9.0, 3.0]);
- Intrinsic:
_mm_fnmsub_sd
- Assembly: one of
vfnmsub132sd xmm, xmm, xmm
vfnmsub213sd xmm, xmm, xmm
vfnmsub231sd xmm, xmm, xmm