public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Hongtao Liu <crazylht@gmail.com>
To: Andrew Pinski <pinskia@gmail.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH][i386] Split not+broadcast+pand to broadcast+pandn.
Date: Tue, 25 May 2021 14:23:03 +0800	[thread overview]
Message-ID: <CAMZc-bw9ZKU3uLEVZB1RzOKT4mNtPZSMtMW7sLCi6rfeU=3_sg@mail.gmail.com> (raw)
In-Reply-To: <CA+=Sn1kr8cYHr9Q8MnFgwn4UFws4PVH7nWWPWKXZvmfoKx8MQQ@mail.gmail.com>

On Tue, May 25, 2021 at 2:11 PM Andrew Pinski <pinskia@gmail.com> wrote:
>
> On Mon, May 24, 2021 at 11:03 PM Hongtao Liu via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
> >
> > Hi:
> >   This patch is about to do transformation like below.
> >   Bootstrapped and regtested on x86_64-linux-gnu{-m32,}.
> >   Ok for trunk?
> >
> > from
> >         notl    %edi
> >         vpbroadcastd    %edi, %xmm0
> >         vpand   %xmm1, %xmm0, %xmm0
> > to
> >         vpbroadcastd    %edi, %xmm0
> >         vpandn   %xmm1, %xmm0, %xmm0
> >
> > gcc/ChangeLog:
> >
> >         PR target/100711
> >         * config/i386/sse.md (*andnot<mode>3): New combine splitter
> >         after it.
> >
> > gcc/testsuite/ChangeLog:
> >
> >         PR target/100711
> >         * gcc.target/i386/avx2-pr100711.c: New test.
> >         * gcc.target/i386/avx512bw-pr100711.c: New test.
> >
>
>
> Does it make sense to make this more generic and have combine/simplify
> rtx instead try:
> (vec_dup (not)) to (not (vec_dup))

Even w/ that, a combine splitter is still needed since we don't have
any pandn patterns which contain op1 as vec_duplicate or "not" pattern
for vector mode,  generic simplification only helps combine/forprop to
match more possibilities, but not split pattern by itself.

>
> Thanks,
> Andrew Pinski



-- 
BR,
Hongtao

  reply	other threads:[~2021-05-25  6:23 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-25  5:49 Hongtao Liu
2021-05-25  6:11 ` Andrew Pinski
2021-05-25  6:23   ` Hongtao Liu [this message]
2021-05-25  6:29     ` Andrew Pinski
2021-05-25  6:34       ` Hongtao Liu
2021-05-26  1:21         ` Hongtao Liu
2021-05-26  4:12           ` Andrew Pinski
2021-05-26  5:17             ` Hongtao Liu
2021-06-01  8:32               ` Hongtao Liu
2021-06-01 13:54                 ` Segher Boessenkool
2021-06-01 14:02                 ` Segher Boessenkool
2021-06-02  5:39                   ` liuhongt
2021-06-02  5:39                     ` [PATCH] Canonicalize (vec_duplicate (not A)) to (not (vec_duplicate A)) liuhongt
2021-06-02  7:07                       ` Richard Biener
2021-06-02 20:46                         ` Segher Boessenkool
2021-06-03 11:03                           ` Liu, Hongtao
2021-06-03 11:06                             ` Jakub Jelinek
2021-06-03 19:59                             ` Segher Boessenkool
2021-06-04  2:48                               ` Liu, Hongtao
2021-06-02  5:49                     ` Hongtao Liu
2021-06-02  5:41                   ` [PATCH] Canonicalize (vec_duplicate (not A)) to (not (vec_duplicate A)) liuhongt

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='CAMZc-bw9ZKU3uLEVZB1RzOKT4mNtPZSMtMW7sLCi6rfeU=3_sg@mail.gmail.com' \
    --to=crazylht@gmail.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=pinskia@gmail.com \
    /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).