Function safe_arch::shr_each_u64_m128i
source ยท pub fn shr_each_u64_m128i(a: m128i, count: m128i) -> m128i
Available with target feature
avx2
only.Expand description
Shift u64
values to the left by count
bits.
- Each
u64
lane ina
is shifted by the same indexedu64
lane incount
.
let a = m128i::from([100_u64, 110]);
let count = m128i::from([1_u64, 2]);
let out: [u64; 2] = shr_each_u64_m128i(a, count).into();
assert_eq!(out, [100_u64 >> 1, 110 >> 2]);
- Intrinsic:
_mm_srlv_epi64
- Assembly:
vpsrlvq xmm, xmm, xmm