diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2021-01-05 14:30:05 +0100 |
---|---|---|
committer | Uros Bizjak <ubizjak@gmail.com> | 2021-01-05 14:45:27 +0100 |
commit | 951bdbde6ade56eb63af1dfa18777348a8a0d89e (patch) | |
tree | b2bdc1db80756a005911d6c488dadbc979391c66 | |
parent | 6ffaffd5d10e1d7daee5e1b889bfc8de06ef1a4b (diff) | |
download | gcc-951bdbde6ade56eb63af1dfa18777348a8a0d89e.zip gcc-951bdbde6ade56eb63af1dfa18777348a8a0d89e.tar.gz gcc-951bdbde6ade56eb63af1dfa18777348a8a0d89e.tar.bz2 |
i386: Add _mm256_cmov_si256 [PR98521]
Add missing _mm256_cmov_si256 intrinsic to xopintrin.h.
2021-01-05 Uroš Bizjak <ubizjak@gmail.com>
gcc/
PR target/98521
* config/i386/xopintrin.h (_mm256_cmov_si256): New.
-rw-r--r-- | gcc/config/i386/xopintrin.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/i386/xopintrin.h b/gcc/config/i386/xopintrin.h index 7b46084..b95ef48 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) { |