Function safe_arch::shr_all_i32_m128i

source ·
pub fn shr_all_i32_m128i(a: m128i, count: m128i) -> m128i
Expand description

Shift each i32 lane to the right by the count in the lower i64 lane.

New bits are the sign bit.

let a = m128i::from([1_i32, 2, -3, -4]);
let b = m128i::from([3_i64, 0]);
let c: [i32; 4] = shr_all_i32_m128i(a, b).into();
assert_eq!(c, [1 >> 3, 2 >> 3, -3 >> 3, -4 >> 3]);