Add missing _mm256_cmov_si256 intrinsic to xopintrin.h. 2021-01-05 Uroš Bizjak <ubiz...@gmail.com>
gcc/ PR target/98521 * config/i386/xopintrin.h (_mm256_cmov_si256): New. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. Pushed to mainline, will be beckported to gcc-10. Uros.
diff --git a/gcc/config/i386/xopintrin.h b/gcc/config/i386/xopintrin.h index 49bac22effa..4299a5993ed 100644 --- a/gcc/config/i386/xopintrin.h +++ b/gcc/config/i386/xopintrin.h @@ -208,6 +208,12 @@ _mm_cmov_si128(__m128i __A, __m128i __B, __m128i __C) return (__m128i) __builtin_ia32_vpcmov (__A, __B, __C); } +extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) +_mm256_cmov_si256(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i) __builtin_ia32_vpcmov256 (__A, __B, __C); +} + extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) _mm_perm_epi8(__m128i __A, __m128i __B, __m128i __C) {