AVX512: Restrict default masks for prefetch gather/scatter
authorafomin <afomin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Jan 2016 14:31:13 +0000 (14:31 +0000)
committerafomin <afomin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Jan 2016 14:31:13 +0000 (14:31 +0000)
commit7361eb317d39bb9c5e28846bd30ca56485e9baf8
treeec971f192e3a36112212ef0f421f61ba2f70265e
parent1246355c4c2ed8cd81a6baed380685e32414133a
AVX512: Restrict default masks for prefetch gather/scatter
instructions.

gcc/

PR target/69228
* config/i386/sse.md (define_expand "avx512pf_gatherpf<mode>sf"):
Change first operand predicate from register_or_constm1_operand
to register_operand.
(define_expand "avx512pf_gatherpf<mode>df"): Likewise.
(define_expand "avx512pf_scatterpf<mode>sf"): Likewise.
(define_expand "avx512pf_scatterpf<mode>df"): Likewise.
(define_insn "*avx512pf_gatherpf<mode>sf"): Remove.
(define_insn "*avx512pf_gatherpf<mode>df"): Likewise.
(define_insn "*avx512pf_scatterpf<mode>sf"): Likewise.
(define_insn "*avx512pf_scatterpf<mode>df"): Likewise.
* config/i386/i386.c (ix86_expand_builtin): Remove first operand
comparison with constm1_rtx from vec_prefetch_gen part.

gcc/testsuite

PR target/69228
* gcc.target/i386/avx512pf-vscatterpf0dpd-1.c: Adjust.
* gcc.target/i386/avx512pf-vscatterpf0dps-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf0qpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf0qps-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf1dpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf1dps-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf1qpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vscatterpf1qps-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232324 138bc75d-0d04-0410-961f-82ee72b054a4
12 files changed:
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c
gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c