Function _mm_permutexvar_ph

#[target_feature(enable = "avx512fp16", enable = "avx512vl")]
pub fn _mm_permutexvar_ph(idx: __m128i, a: __m128h) -> __m128h

Shuffle half-precision (16-bit) floating-point elements in a using the corresponding index in idx, and store the results in dst.

Intel's documentation