re PR target/88461 (AVX512: gcc should keep value in kN registers if possible)
authorJakub Jelinek <jakub@redhat.com>
Thu, 13 Dec 2018 08:00:42 +0000 (09:00 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 13 Dec 2018 08:00:42 +0000 (09:00 +0100)
commite00199d7b78ccff66112b17b8c9bb07f67f40e66
tree930d6ce062ca71600002c77a0c82070859acb1e1
parent87d570a02295ac9391a17d6bb4e4a1d226a0af1b
re PR target/88461 (AVX512: gcc should keep value in kN registers if possible)

PR target/88461
* config/i386/sse.md (VI1248_AVX512VLBW, AVX512ZEXTMASK): New
mode iterators.
(<avx512>_testm<mode>3<mask_scalar_merge_name>,
<avx512>_testnm<mode>3<mask_scalar_merge_name>): Merge patterns
with VI12_AVX512VL and VI48_AVX512VL iterators into ones with
VI1248_AVX512VLBW iterator.
(*<avx512>_testm<VI1248_AVX512VLBW:mode>3_zext,
*<avx512>_testm<VI1248_AVX512VLBW:mode>3_zext_mask,
*<avx512>_testnm<VI1248_AVX512VLBW:mode>3_zext,
*<avx512>_testnm<VI1248_AVX512VLBW:mode>3_zext_mask): New
define_insns.

* gcc.target/i386/pr88461.c: New test.

From-SVN: r267077
gcc/ChangeLog
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr88461.c [new file with mode: 0644]