diff mbox

Testsuite tweaks for the SPARC

Message ID 201307270836.55229.ebotcazou@adacore.com
State New
Headers show

Commit Message

Eric Botcazou July 27, 2013, 6:36 a.m. UTC
This fixes the failures that recently appeared in the vectorization testsuite 
on the SPARC:
 - gcc.dg/vect/pr57705.c: the last loop uses a truncation so we can vectorize 
only the first 2 loops,
 - gcc.dg/vect/pr57741-2.c: the testcase requires vectors of floats,
 - gcc.dg/vect/pr57741-3.c: likewise,
 - gcc.dg/vect/bb-slp-32.c: the testcase expects vector alignment support.

Tested on SPARC/Solaris, SPARC64/Solaris and x86-64/Linux, applied on the 
mainline as obvious.


2013-07-27  Eric Botcazou  <ebotcazou@adacore.com>

	* gcc.dg/vect/pr57705.c: Adjust for a !vect_pack_trunc target.
	* gcc.dg/vect/pr57741-2.c: Require a vect_float target.
	* gcc.dg/vect/pr57741-3.c: Likewise.
	* gcc.dg/vect/bb-slp-32.c: XFAIL for a vect_no_align target.

Comments

Andreas Schwab July 28, 2013, 6:25 a.m. UTC | #1
Eric Botcazou <ebotcazou@adacore.com> writes:

> Index: gcc.dg/vect/pr57705.c
> ===================================================================
> --- gcc.dg/vect/pr57705.c	(revision 201177)
> +++ gcc.dg/vect/pr57705.c	(working copy)
> @@ -61,5 +61,6 @@ main ()
>    return 0;
>  }
>  
> -/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 3 "vect" } } */
> +/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 3 "vect" { target vect_pack_trunc } } } */
> +/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 2 "vect" { target { ! vect_pack_trunc } } } } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */

That doesn't work on ia64.

Andreas.
Eric Botcazou July 28, 2013, 4:27 p.m. UTC | #2
> That doesn't work on ia64.

Yeah, there are so many vectorizer failures on IA-64 that I gave up looking at 
them some time ago.  Maybe vect_pack_trunc should be false there too.  At least 
bb-slp-32.c now passes, so the overall number of failures hasn't increased. :-)
Andreas Schwab July 28, 2013, 5:58 p.m. UTC | #3
Eric Botcazou <ebotcazou@adacore.com> writes:

> At least bb-slp-32.c now passes, so the overall number of failures
> hasn't increased. :-)

It's still an XFAIL, though.

Andreas.
diff mbox

Patch

Index: gcc.dg/vect/bb-slp-32.c
===================================================================
--- gcc.dg/vect/bb-slp-32.c	(revision 201177)
+++ gcc.dg/vect/bb-slp-32.c	(working copy)
@@ -19,5 +19,5 @@  int foo (int *p)
   return tem0 + tem1 + tem2 + tem3;
 }
 
-/* { dg-final { scan-tree-dump "vectorization is not profitable" "slp" } } */
+/* { dg-final { scan-tree-dump "vectorization is not profitable" "slp" { xfail  vect_no_align } } } */
 /* { dg-final { cleanup-tree-dump "slp" } } */
Index: gcc.dg/vect/pr57705.c
===================================================================
--- gcc.dg/vect/pr57705.c	(revision 201177)
+++ gcc.dg/vect/pr57705.c	(working copy)
@@ -61,5 +61,6 @@  main ()
   return 0;
 }
 
-/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 3 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 3 "vect" { target vect_pack_trunc } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loop" 2 "vect" { target { ! vect_pack_trunc } } } } */
 /* { dg-final { cleanup-tree-dump "vect" } } */
Index: gcc.dg/vect/pr57741-2.c
===================================================================
--- gcc.dg/vect/pr57741-2.c	(revision 201177)
+++ gcc.dg/vect/pr57741-2.c	(working copy)
@@ -1,5 +1,6 @@ 
 /* PR tree-optimization/57741 */
 /* { dg-do run } */
+/* { dg-require-effective-target vect_float } */
 /* { dg-additional-options "-ffast-math" } */
 
 #include "tree-vect.h"
Index: gcc.dg/vect/pr57741-3.c
===================================================================
--- gcc.dg/vect/pr57741-3.c	(revision 201177)
+++ gcc.dg/vect/pr57741-3.c	(working copy)
@@ -1,5 +1,6 @@ 
 /* PR tree-optimization/57741 */
 /* { dg-do run } */
+/* { dg-require-effective-target vect_float } */
 /* { dg-additional-options "-ffast-math" } */
 
 #include "tree-vect.h"