public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Andrew Stubbs <ams@codesourcery.com>
To: "juzhe.zhong@rivai.ai" <juzhe.zhong@rivai.ai>,
	gcc-patches <gcc-patches@gcc.gnu.org>
Cc: jeffreyalaw <jeffreyalaw@gmail.com>, rguenther <rguenther@suse.de>
Subject: Re: [PATCH] test: Fix FAIL of pr97428.c for RVV
Date: Tue, 7 Nov 2023 11:44:23 +0000	[thread overview]
Message-ID: <146d88bc-5457-455e-9a06-ae91e4bc0160@codesourcery.com> (raw)
In-Reply-To: <278D2C6D0C52F23E+202311071924400357211@rivai.ai>

On 07/11/2023 11:24, juzhe.zhong@rivai.ai wrote:
> Oh. Sorry maybe it's better like this:
> 
> /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 
> "vect" { target { { ! vect_hw_misalign } || { vect512 } } } } } */
> /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 4 
> "vect" { target{ ! vect512 } } } } */

The conditions are backwards; this expects vect512 machines to match 
twice. Also I think there's a space missing.

Andrew

> 
> ------------------------------------------------------------------------
> juzhe.zhong@rivai.ai
> 
>     *From:* juzhe.zhong@rivai.ai <mailto:juzhe.zhong@rivai.ai>
>     *Date:* 2023-11-07 19:23
>     *To:* ams <mailto:ams@codesourcery.com>; gcc-patches
>     <mailto:gcc-patches@gcc.gnu.org>
>     *CC:* jeffreyalaw <mailto:jeffreyalaw@gmail.com>; rguenther
>     <mailto:rguenther@suse.de>
>     *Subject:* Re: Re: [PATCH] test: Fix FAIL of pr97428.c for RVV
>     Do you mean this ?
> 
>     /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2
>     "vect" { target { { ! vect_hw_misalign } || { vect512 } } } } } */
>     /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 4
>     "vect" { xfail { ! vect512 } } } } */
> 
>     Could you try again ? If it works for you, I am gonna send V2 patch
>     to Richi.
> 
>     Thank you so much for help.
>     ------------------------------------------------------------------------
>     juzhe.zhong@rivai.ai
> 
>         *From:* Andrew Stubbs <mailto:ams@codesourcery.com>
>         *Date:* 2023-11-07 19:21
>         *To:* juzhe.zhong@rivai.ai <mailto:juzhe.zhong@rivai.ai>;
>         gcc-patches <mailto:gcc-patches@gcc.gnu.org>
>         *CC:* jeffreyalaw <mailto:jeffreyalaw@gmail.com>; rguenther
>         <mailto:rguenther@suse.de>
>         *Subject:* Re: [PATCH] test: Fix FAIL of pr97428.c for RVV
>         On 07/11/2023 11:05, juzhe.zhong@rivai.ai wrote:
>          > Could you try this ?
>          >
>          > /* { dg-final { scan-tree-dump-times "vectorizing stmts using
>         SLP" 2
>          > "vect" { xfail { { ! vect_hw_misalign } || { vect512 } } } } } */
>          > /* { dg-final { scan-tree-dump-times "vectorizing stmts using
>         SLP" 4
>          > "vect" { xfail { ! vect512 } } } } */
>         PASS: gcc.dg/vect/pr97428.c (test for excess errors)
>         PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>         load of size 8"
>         PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>         store of size 16"
>         gcc.dg/vect/pr97428.c: pattern found 4 times
>         XFAIL: gcc.dg/vect/pr97428.c scan-tree-dump-times vect "vectorizing
>         stmts using SLP" 2
>         PASS: gcc.dg/vect/pr97428.c scan-tree-dump-times vect
>         "vectorizing stmts
>         using SLP" 4
>         PASS: gcc.dg/vect/pr97428.c scan-tree-dump-not vect "gap of 6
>         elements"
>         The passes are all correct (assuming that 4 matches are a valid
>         number),
>         but if you have mutliple patterns with contractictory
>         expectations then
>         you probably want to use "target" rather than "xfail" to avoid
>         the noise
>         (and invert the conditions, obviously).
>         Andrew
>          >
>         ------------------------------------------------------------------------
>          > juzhe.zhong@rivai.ai
>          >
>          >     *From:* Andrew Stubbs <mailto:ams@codesourcery.com>
>          >     *Date:* 2023-11-07 18:59
>          >     *To:* juzhe.zhong@rivai.ai <mailto:juzhe.zhong@rivai.ai>;
>          >     gcc-patches <mailto:gcc-patches@gcc.gnu.org>
>          >     *CC:* jeffreyalaw <mailto:jeffreyalaw@gmail.com>; rguenther
>          >     <mailto:rguenther@suse.de>
>          >     *Subject:* Re: [PATCH] test: Fix FAIL of pr97428.c for RVV
>          >     On 07/11/2023 10:10, juzhe.zhong@rivai.ai wrote:
>          >      > So, this patch not only fixes RVV FAIL, but also fixes
>         GCN ?
>          >     Before the patch I have:
>          >     PASS: gcc.dg/vect/pr97428.c (test for excess errors)
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>          >     load of size 8"
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>          >     store of size 16"
>          >     gcc.dg/vect/pr97428.c: pattern found 4 times
>          >     XFAIL: gcc.dg/vect/pr97428.c scan-tree-dump-times vect
>         "vectorizing
>          >     stmts using SLP" 2
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump-not vect "gap
>         of 6 elements"
>          >     With the patch I now get:
>          >     PASS: gcc.dg/vect/pr97428.c (test for excess errors)
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>          >     load of size 8"
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump vect "Detected
>         interleaving
>          >     store of size 16"
>          >     gcc.dg/vect/pr97428.c: pattern found 4 times
>          >     XFAIL: gcc.dg/vect/pr97428.c scan-tree-dump-times vect
>         "vectorizing
>          >     stmts using SLP" 2
>          >     XPASS: gcc.dg/vect/pr97428.c scan-tree-dump-times vect
>         "vectorizing
>          >     stmts using SLP" 4
>          >     PASS: gcc.dg/vect/pr97428.c scan-tree-dump-not vect "gap
>         of 6 elements"
>          >     It's different, but not "fixed".
>          >     Andrew
>          >      >
>          >      >
>          >      >
>          >    
>         ------------------------------------------------------------------------
>          >      > juzhe.zhong@rivai.ai
>          >      >
>          >      >     *From:* Andrew Stubbs <mailto:ams@codesourcery.com>
>          >      >     *Date:* 2023-11-07 18:09
>          >      >     *To:* Juzhe-Zhong <mailto:juzhe.zhong@rivai.ai>;
>          >      >     gcc-patches@gcc.gnu.org
>         <mailto:gcc-patches@gcc.gnu.org>
>          >      >     *CC:* jeffreyalaw@gmail.com
>         <mailto:jeffreyalaw@gmail.com>;
>          >      >     rguenther@suse.de <mailto:rguenther@suse.de>
>          >      >     *Subject:* Re: [PATCH] test: Fix FAIL of pr97428.c
>         for RVV
>          >      >     On 07/11/2023 07:44, Juzhe-Zhong wrote:
>          >      >      > This test shows vectorizing stmts using SLP 4 times
>          >     instead of 2
>          >      >     for RVV.
>          >      >      > The reason is RVV has 512 bit vector.
>          >      >      > Here is comparison between RVV ans ARM SVE:
>          >      >      > https://godbolt.org/z/xc5KE5rPs
>          >      >      >
>          >      >      > But I notice AMDGCN also has 512 bit vector,
>         seems this patch
>          >      >     will cause FAIL in GCN ?
>          >      >      >
>          >      >      > Not sure whether GCN is 2 times or 4 times ?
>          >      >     The pattern matches 4 times on GCN.
>          >      >      > gcc/testsuite/ChangeLog:
>          >      >      >
>          >      >      > * gcc.dg/vect/pr97428.c: Fix FAIL for RVV.
>          >      >      >
>          >      >      > ---
>          >      >      >   gcc/testsuite/gcc.dg/vect/pr97428.c | 3 ++-
>          >      >      >   1 file changed, 2 insertions(+), 1 deletion(-)
>          >      >      >
>          >      >      > diff --git a/gcc/testsuite/gcc.dg/vect/pr97428.c
>          >      >     b/gcc/testsuite/gcc.dg/vect/pr97428.c
>          >      >      > index ad6416096aa..352c9bf04a7 100644
>          >      >      > --- a/gcc/testsuite/gcc.dg/vect/pr97428.c
>          >      >      > +++ b/gcc/testsuite/gcc.dg/vect/pr97428.c
>          >      >      > @@ -43,5 +43,6 @@ void foo_i2(dcmlx4_t dst[],
>         const dcmlx_t
>          >      >     src[], int n)
>          >      >      >   /* { dg-final { scan-tree-dump "Detected
>         interleaving
>          >     store of
>          >      >     size 16" "vect" } } */
>          >      >      >   /* We're not able to peel & apply re-aligning
>         to make
>          >     accesses
>          >      >     well-aligned for !vect_hw_misalign,
>          >      >      >      but we could by peeling the stores for
>         alignment and
>          >      >     applying re-aligning loads.  */
>          >      >      > -/* { dg-final { scan-tree-dump-times
>         "vectorizing stmts using
>          >      >     SLP" 2 "vect" { xfail { ! vect_hw_misalign } } } } */
>          >      >      > +/* { dg-final { scan-tree-dump-times
>         "vectorizing stmts using
>          >      >     SLP" 2 "vect" { xfail { { ! vect_hw_misalign } ||
>         { vect512 }
>          >     } } } } */
>          >      >      > +/* { dg-final { scan-tree-dump-times
>         "vectorizing stmts using
>          >      >     SLP" 4 "vect" { xfail { { ! vect_hw_misalign } ||
>         { ! vect512
>          >     } } }
>          >      >     } } */
>          >      >      >   /* { dg-final { scan-tree-dump-not "gap of 6
>         elements"
>          >     "vect" }
>          >      >     } */
>          >      >
>          >
> 


  reply	other threads:[~2023-11-07 11:44 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-07  7:44 Juzhe-Zhong
2023-11-07 10:09 ` Andrew Stubbs
2023-11-07 10:10   ` juzhe.zhong
2023-11-07 10:59     ` Andrew Stubbs
2023-11-07 11:05       ` juzhe.zhong
2023-11-07 11:21         ` Andrew Stubbs
2023-11-07 11:23           ` juzhe.zhong
     [not found]           ` <202311071923515706180@rivai.ai>
2023-11-07 11:24             ` juzhe.zhong
2023-11-07 11:44               ` Andrew Stubbs [this message]
2023-11-07 12:03                 ` juzhe.zhong
2023-11-07 12:05                   ` Andrew Stubbs
2023-11-07 12:07                     ` juzhe.zhong

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=146d88bc-5457-455e-9a06-ae91e4bc0160@codesourcery.com \
    --to=ams@codesourcery.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jeffreyalaw@gmail.com \
    --cc=juzhe.zhong@rivai.ai \
    --cc=rguenther@suse.de \
    /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).