public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/97513] [11 regression] aarch64 SVE regressions since r11-3822
Date: Wed, 07 Apr 2021 14:22:12 +0000	[thread overview]
Message-ID: <bug-97513-4-PdmD8Ap16c@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-97513-4@http.gcc.gnu.org/bugzilla/>

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

--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Sandiford <rsandifo@gcc.gnu.org>:

https://gcc.gnu.org/g:2f3d9104610cb2058cf091707a20c1c6eff8d470

commit r11-8030-g2f3d9104610cb2058cf091707a20c1c6eff8d470
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Wed Apr 7 15:21:56 2021 +0100

    vect: Restore variable-length SLP permutes [PR97513]

    Many of the gcc.target/sve/slp-perm*.c tests started failing
    after the introduction of separate SLP permute nodes.
    This patch adds variable-length support using a similar
    technique to vect_transform_slp_perm_load.

    As there, the idea is to detect when every permute mask vector
    is the same and can be generated using a regular stepped sequence.
    We can easily handle those cases for variable-length, but still
    need to restrict the general case to constant-length.

    Again copying vect_transform_slp_perm_load, the idea is to distinguish
    the two cases regardless of whether the length is variable or not,
    partly to increase testing coverage and partly because it avoids
    generating redundant trees.

    Doing this means that we can also use SLP for the two-vector
    permute in pr88834.c, which we couldn't before VEC_PERM_EXPR
    nodes were introduced.  The patch therefore makes pr88834.c
    check that we don't regress back to not using SLP and adds
    pr88834_ld3.c to check for the original problem in the PR.

    gcc/
            PR tree-optimization/97513
            * tree-vect-slp.c (vect_add_slp_permutation): New function,
            split out from...
            (vectorizable_slp_permutation): ...here.  Detect cases in which
            all VEC_PERM_EXPRs are guaranteed to have the same stepped
            permute vector and only generate one permute vector for that case.
            Extend that case to handle variable-length vectors.

    gcc/testsuite/
            * gcc.target/aarch64/sve/pr88834.c: Expect the vectorizer to use
SLP.
            * gcc.target/aarch64/sve/pr88834_ld3.c: New test.

  parent reply	other threads:[~2021-04-07 14:22 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-21  9:38 [Bug tree-optimization/97513] New: " clyon at gcc dot gnu.org
2020-10-21 10:32 ` [Bug target/97513] " rguenth at gcc dot gnu.org
2020-10-21 13:14 ` acoplan at gcc dot gnu.org
2020-10-21 13:17 ` clyon at gcc dot gnu.org
2020-11-19 18:02 ` rsandifo at gcc dot gnu.org
2020-11-19 19:56 ` clyon at gcc dot gnu.org
2021-01-14  9:30 ` rguenth at gcc dot gnu.org
2021-03-09 14:26 ` rguenth at gcc dot gnu.org
2021-03-17 13:13 ` jakub at gcc dot gnu.org
2021-04-01 16:11 ` rsandifo at gcc dot gnu.org
2021-04-07 14:22 ` cvs-commit at gcc dot gnu.org [this message]
2021-04-08 10:21 ` jakub at gcc dot gnu.org
2021-04-09 11:45 ` rsandifo at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-97513-4-PdmD8Ap16c@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).