[][src]Function safe_arch::mul_i32_keep_low_m128i

#[must_use]pub fn mul_i32_keep_low_m128i(a: m128i, b: m128i) -> m128i
This is supported with target feature sse4.1 only.

Lanewise a * b with lanes as i32, keep the low bits of the i64 intermediates.

let a = m128i::from([1, 2000000, -300, 45689]);
let b = m128i::from([5, 6000000, 700, -89109]);
let c: [i32; 4] = mul_i32_keep_low_m128i(a, b).into();
assert_eq!(c, [5, -138625024, -210000, 223666195]);