pub fn dot_product_m128d<const IMM: i32>(a: m128d, b: m128d) -> m128d
Available with target feature sse4.1 only.
Expand description

Performs a dot product of two m128d registers.

The output details are determined by the constant:

  • For each lane, you can multiply that lane from a and b or you can take a default of 0.0

  • Bits 4 and 5 determines if we mul lanes 0 in a and b, and lanes 1 in a and b.

  • This forms two temporary f64 values which are summed to a single f64.

  • For each output lane, you can have the sum in that lane or 0.0.

  • Bits 0 and 1 determines if an output lane is our sum or 0.0.

  • Intrinsic: _mm_dp_pd

  • Assembly: dppd xmm, xmm, imm8