public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3
@ 2019-11-28 17:32 Tamar Christina
  2019-11-28 19:41 ` Richard Biener
  0 siblings, 1 reply; 4+ messages in thread
From: Tamar Christina @ 2019-11-28 17:32 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, rguenther

[-- Attachment #1: Type: text/plain, Size: 496 bytes --]

Hi All,

This patch turns off vect-epilogue-nomask for slp-reduc-3 as it seems that
the epiloque in this loop is vectorizable using SLP and smaller VF.  Since this
test expects there to be no SLP vectorization at all the testcase then fails
for arm targets.

Regtested on arm-none-eabi and no issues.

Ok for trunk?

Thanks,
Tamar

gcc/testsuite/ChangeLog:

2019-11-28  Tamar Christina  <tamar.christina@arm.com>

	* gcc.dg/vect/slp-reduc-3.c: Turn off epilogue-nomask.

-- 

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: rb12373.patch --]
[-- Type: text/x-diff; name="rb12373.patch", Size: 473 bytes --]

diff --git a/gcc/testsuite/gcc.dg/vect/slp-reduc-3.c b/gcc/testsuite/gcc.dg/vect/slp-reduc-3.c
index 9c8124c9b5f289d0a2ed49d3c8ee626d0bf05862..7358275c3cba6b3fd41b34cb2449c85810b0a35c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-reduc-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-reduc-3.c
@@ -1,4 +1,5 @@
 /* { dg-require-effective-target vect_int } */
+/* { dg-additional-options "--param=vect-epilogues-nomask=0" } */
 
 #include <stdarg.h>
 #include "tree-vect.h"


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3
  2019-11-28 17:32 [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3 Tamar Christina
@ 2019-11-28 19:41 ` Richard Biener
  2019-11-28 22:11   ` Tamar Christina
  0 siblings, 1 reply; 4+ messages in thread
From: Richard Biener @ 2019-11-28 19:41 UTC (permalink / raw)
  To: Tamar Christina; +Cc: gcc-patches, nd

[-- Attachment #1: Type: text/plain, Size: 902 bytes --]

On Thu, 28 Nov 2019, Tamar Christina wrote:

> Hi All,
> 
> This patch turns off vect-epilogue-nomask for slp-reduc-3 as it seems that
> the epiloque in this loop is vectorizable using SLP and smaller VF.  Since this
> test expects there to be no SLP vectorization at all the testcase then fails
> for arm targets.

Actually we do expect SLP vectorization, just the counting might go wrong.

What's the actual FAIL for arm?

Disabling epilogue vect is of course OK if it simplifies things.

> Regtested on arm-none-eabi and no issues.
> 
> Ok for trunk?

> Thanks,
> Tamar
> 
> gcc/testsuite/ChangeLog:
> 
> 2019-11-28  Tamar Christina  <tamar.christina@arm.com>
> 
> 	* gcc.dg/vect/slp-reduc-3.c: Turn off epilogue-nomask.
> 
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409 Nuernberg,
Germany; GF: Felix Imendörffer; HRB 36809 (AG Nuernberg)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3
  2019-11-28 19:41 ` Richard Biener
@ 2019-11-28 22:11   ` Tamar Christina
  2019-11-29  8:41     ` Richard Biener
  0 siblings, 1 reply; 4+ messages in thread
From: Tamar Christina @ 2019-11-28 22:11 UTC (permalink / raw)
  To: Richard Biener; +Cc: gcc-patches, nd

Hi Richi,

> >
> > This patch turns off vect-epilogue-nomask for slp-reduc-3 as it seems
> > that the epiloque in this loop is vectorizable using SLP and smaller
> > VF.  Since this test expects there to be no SLP vectorization at all
> > the testcase then fails for arm targets.
> 
> Actually we do expect SLP vectorization, just the counting might go wrong.
> 
> What's the actual FAIL for arm?

I should have worded this better considering the testcase literally contains SLP in the name...

The failure is for the XFAIL 

/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { xfail { vect_widen_sum_hi_to_si_pattern || { ! vect_unpack } } } } } */

And my understanding as to what is happening is that without epiloque no mask it would only try HI modes, but thanks to the epiloques nomask
It tries QI mode as well which succeeds.  The xfail then generates an xpass since the condition on it checks for HI to SI and not QI.

So I disabled the epiloque mask since it seems to violate the conditions the test actually wanted to test for.

Not quite sure why it's failing only on Arm though.

Regards,
Tamar

> 
> Disabling epilogue vect is of course OK if it simplifies things.
> 
> > Regtested on arm-none-eabi and no issues.
> >
> > Ok for trunk?
> 
> > Thanks,
> > Tamar
> >
> > gcc/testsuite/ChangeLog:
> >
> > 2019-11-28  Tamar Christina  <tamar.christina@arm.com>
> >
> > 	* gcc.dg/vect/slp-reduc-3.c: Turn off epilogue-nomask.
> >
> >
> 
> --
> Richard Biener <rguenther@suse.de>
> SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409
> Nuernberg, Germany; GF: Felix Imendörffer; HRB 36809 (AG Nuernberg)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3
  2019-11-28 22:11   ` Tamar Christina
@ 2019-11-29  8:41     ` Richard Biener
  0 siblings, 0 replies; 4+ messages in thread
From: Richard Biener @ 2019-11-29  8:41 UTC (permalink / raw)
  To: Tamar Christina; +Cc: gcc-patches, nd

[-- Attachment #1: Type: text/plain, Size: 2049 bytes --]

On Thu, 28 Nov 2019, Tamar Christina wrote:

> Hi Richi,
> 
> > >
> > > This patch turns off vect-epilogue-nomask for slp-reduc-3 as it seems
> > > that the epiloque in this loop is vectorizable using SLP and smaller
> > > VF.  Since this test expects there to be no SLP vectorization at all
> > > the testcase then fails for arm targets.
> > 
> > Actually we do expect SLP vectorization, just the counting might go wrong.
> > 
> > What's the actual FAIL for arm?
> 
> I should have worded this better considering the testcase literally contains SLP in the name...
> 
> The failure is for the XFAIL 
> 
> /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { xfail { vect_widen_sum_hi_to_si_pattern || { ! vect_unpack } } } } } */
> 
> And my understanding as to what is happening is that without epiloque no mask it would only try HI modes, but thanks to the epiloques nomask
> It tries QI mode as well which succeeds.  The xfail then generates an xpass since the condition on it checks for HI to SI and not QI.
> 
> So I disabled the epiloque mask since it seems to violate the conditions the test actually wanted to test for.
> 
> Not quite sure why it's failing only on Arm though.

No idea.

I agree about the resolution so the patch is fine.

Thanks,
RIchard.


> Regards,
> Tamar
> 
> > 
> > Disabling epilogue vect is of course OK if it simplifies things.
> > 
> > > Regtested on arm-none-eabi and no issues.
> > >
> > > Ok for trunk?
> > 
> > > Thanks,
> > > Tamar
> > >
> > > gcc/testsuite/ChangeLog:
> > >
> > > 2019-11-28  Tamar Christina  <tamar.christina@arm.com>
> > >
> > > 	* gcc.dg/vect/slp-reduc-3.c: Turn off epilogue-nomask.
> > >
> > >
> > 
> > --
> > Richard Biener <rguenther@suse.de>
> > SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409
> > Nuernberg, Germany; GF: Felix Imendörffer; HRB 36809 (AG Nuernberg)
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409 Nuernberg,
Germany; GF: Felix Imendörffer; HRB 36809 (AG Nuernberg)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-11-29  8:39 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-28 17:32 [PATCH][GCC][SLP][testsuite] Turn off vect-epilogue-nomask for slp-rect-3 Tamar Christina
2019-11-28 19:41 ` Richard Biener
2019-11-28 22:11   ` Tamar Christina
2019-11-29  8:41     ` Richard Biener

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).