Correction ofo simd.h for AVX512

master
Xavier Arteaga 7 years ago
parent 2a69211f32
commit ec901373d4

@ -707,11 +707,13 @@ static inline void srslte_simd_cf_storeu(float *re, float *im, simd_cf_t simdreg
static inline simd_f_t srslte_simd_cf_re(simd_cf_t in) { static inline simd_f_t srslte_simd_cf_re(simd_cf_t in) {
simd_f_t out = in.re; simd_f_t out = in.re;
#ifndef LV_HAVE_AVX512
#ifdef LV_HAVE_AVX2 #ifdef LV_HAVE_AVX2
/* Permute for AVX registers (mis SSE registers) */ /* Permute for AVX registers (mis SSE registers) */
const __m256i idx = _mm256_setr_epi32(0, 2, 4, 6, 1, 3, 5, 7); const __m256i idx = _mm256_setr_epi32(0, 2, 4, 6, 1, 3, 5, 7);
out = _mm256_permutevar8x32_ps(out, idx); out = _mm256_permutevar8x32_ps(out, idx);
#endif /* LV_HAVE_AVX2 */ #endif /* LV_HAVE_AVX2 */
#endif /* LV_HAVE_AVX512 */
return out; return out;
} }

Loading…
Cancel
Save