Hi,
In gcc.dg/vect/slp-3.c and gcc.dg/vect/no-vfa-pr29145.c vectorization is
expected to fail on targets vect_no_align. But no realignment is necessary
here except for having the array bases aligned. This patch removes xfail
for vect_no_align (and increases a loop bound in slp-3.c to prevent
complete unrolling). It is supposed to fix the XPASSes on SPARC, I also
checked it with a cross-compiler on ia64-linux-gnu, and tested on
x86_64-suse-linux.
vect_no_align is true for
if { [istarget mipsisa64*-*-*]
|| [istarget sparc*-*-*]
|| [istarget ia64-*-*]
|| [check_effective_target_arm_vect_no_misalign]
|| ([istarget mips*-*-*]
&& [check_effective_target_mips_loongson]) } {
set et_vect_no_align_saved 1
}
so I'd appreciate testing on these targets.
Thanks,
Ira
testsuite/ChangeLog
PR testsuite/48498
* gcc.dg/vect/slp-3.c: Increase loop bound. Don't expect to fail
on vect_no_align targets.
* gcc.dg/vect/no-vfa-pr29145.c: Don't expect to fail on
vect_no_align targets.
Index: testsuite/gcc.dg/vect/slp-3.c
===================================================================
--- testsuite/gcc.dg/vect/slp-3.c (revision 172765)
+++ testsuite/gcc.dg/vect/slp-3.c (working copy)
@@ -4,9 +4,9 @@
#include <stdarg.h>
#include "tree-vect.h"
-#define N 8
+#define N 12
-unsigned short in[N*8] =
{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63};
+unsigned short in[N*8] =
{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
int
main1 ()
@@ -142,7 +142,7 @@
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 3 loops" 1 "vect" { xfail
vect_no_align } } } */
-/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 3
"vect" { xfail vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 3 loops" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 3
"vect" } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
Index: testsuite/gcc.dg/vect/no-vfa-pr29145.c
===================================================================
--- testsuite/gcc.dg/vect/no-vfa-pr29145.c (revision 172765)
+++ testsuite/gcc.dg/vect/no-vfa-pr29145.c (working copy)
@@ -48,6 +48,6 @@
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 2
"vect" { xfail vect_no_align } } } */
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1
"vect" { xfail vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 2 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
/* { dg-final { cleanup-tree-dump "vect" } } */