The 2 loops in octfapg_universe can and will be vectorized now
after r14-333-g6d4b59a9356ac4 on targets that support multiplication
in the long type. But the testcase does not check vect_long_mult for
that, so this patch corrects that error and now the testcase passes correctly
on aarch64-linux-gnu (with and without SVE).
Built and tested on aarch64-linux-gnu (with and without SVE).
gcc/testsuite/ChangeLog:
PR testsuite/109705
* gcc.dg/vect/pr25413a.c: Expect 1 vectorized loops for !vect_long_mult
and 2 for vect_long_mult.
Signed-off-by: Andrew Pinski <[email protected]>
---
gcc/testsuite/gcc.dg/vect/pr25413a.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/gcc/testsuite/gcc.dg/vect/pr25413a.c
b/gcc/testsuite/gcc.dg/vect/pr25413a.c
index ffb517c9ce0..905665e5dbe 100644
--- a/gcc/testsuite/gcc.dg/vect/pr25413a.c
+++ b/gcc/testsuite/gcc.dg/vect/pr25413a.c
@@ -123,6 +123,8 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" } } */
+/* The second loop in octfapg_universe requires long multiply to do the
vectorization. */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target {
! vect_long_mult } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target
vect_long_mult } } } */
/* { dg-final { scan-tree-dump-times "vector alignment may not be reachable" 1
"vect" { target { ! vector_alignment_reachable } } } } */
/* { dg-final { scan-tree-dump-times "Alignment of access forced using
versioning" 1 "vect" { target { ! vector_alignment_reachable } } } } */
--
2.39.3