[−][src]Function safe_arch::shuffle_av_f32_half_m256
#[must_use]pub fn shuffle_av_f32_half_m256(a: m256, v: m256i) -> m256
This is supported with target feature
avx
only.Shuffle f32
values in a
using i32
values in v
.
Each lane selection value picks only within that 128-bit half of the overall register.
let a = m256::from_array([0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0]); let v = m256i::from([0, 2, 3, 1, 0, 3, 2, 2]); let c = shuffle_av_f32_half_m256(a, v).to_array(); assert_eq!(c, [0.0, 2.0, 3.0, 1.0, 4.0, 7.0, 6.0, 6.0]);
- Intrinsic:
_mm256_permutevar_ps
- Assembly:
vpermilps ymm, ymm, ymm