Message ID | 20240126050107.607925-1-quic_apinski@quicinc.com |
---|---|
State | New |
Headers | show |
Series | testsuite/vect: Fix pr25413a.c expectations [PR109705] | expand |
On Fri, Jan 26, 2024 at 6:01 AM Andrew Pinski <quic_apinski@quicinc.com> wrote: > > 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). OK > 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 <quic_apinski@quicinc.com> > --- > 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 >
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 } } } } */
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 <quic_apinski@quicinc.com> --- gcc/testsuite/gcc.dg/vect/pr25413a.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)