This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/69228] Default mask is not allowed for AVX512 prefetch gather/scatter insns


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69228

--- Comment #1 from afomin at gcc dot gnu.org ---
Author: afomin
Date: Wed Jan 13 14:31:13 2016
New Revision: 232324

URL: https://gcc.gnu.org/viewcvs?rev=232324&root=gcc&view=rev
Log:
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.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c
    trunk/gcc/config/i386/sse.md
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c
    trunk/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]