[][src]Function safe_arch::blend_varying_m128d

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

Blend the lanes according to a runtime varying mask.

The sign bit of each lane in the mask value determines if the output lane uses a (mask non-negative) or b (mask negative).

let a = m128d::from_array([0.0, 1.0]);
let b = m128d::from_array([2.0, 3.0]);
let mask = m128d::from_array([-1.0, 0.0]);
let c = blend_varying_m128d(a, b, mask).to_array();
assert_eq!(c, [2.0, 1.0]);