On Tue, Nov 17, 2020 at 12:29 PM Richard Sandiford via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > AArch64 passes the "not profitable" test because it treats vec_construct > as having a high-enough cost. This means that we can try other vector > modes, which in turn causes "BB vectorization with gaps at the end of > a load is not supported" to be printed more than once. The number of > times that we print the message doesn't seem important, so the patch > converts it to a plain scan-tree-dump. > > Tested on aarch64-linux-gnu (with and without SVE), arm-linux-gnueabihf > and x86_64-linux-gnu. OK to install?
OK > Richard > > > gcc/testsuite/ > * gcc.dg/vect/bb-slp-pr68892.c: Don't XFAIL the profitability > test for aarch64*-*-*. Allow the "BB vectorization with gaps" > message to be printed more than once. > --- > gcc/testsuite/gcc.dg/vect/bb-slp-pr68892.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pr68892.c > b/gcc/testsuite/gcc.dg/vect/bb-slp-pr68892.c > index 8cd3a6a1274..e9909cf0dfa 100644 > --- a/gcc/testsuite/gcc.dg/vect/bb-slp-pr68892.c > +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pr68892.c > @@ -15,6 +15,6 @@ void foo(void) > > /* ??? Due to the gaps we fall back to scalar loads which makes the > vectorization profitable. */ > -/* { dg-final { scan-tree-dump "not profitable" "slp2" { xfail *-*-* } } } */ > -/* { dg-final { scan-tree-dump-times "BB vectorization with gaps at the end > of a load is not supported" 1 "slp2" } } */ > -/* { dg-final { scan-tree-dump-times "Basic block will be vectorized" 1 > "slp2" } } */ > +/* { dg-final { scan-tree-dump "not profitable" "slp2" { xfail { ! > aarch64*-*-* } } } } */ > +/* { dg-final { scan-tree-dump "BB vectorization with gaps at the end of a > load is not supported" "slp2" } } */ > +/* { dg-final { scan-tree-dump-times "Basic block will be vectorized" 1 > "slp2" { xfail aarch64*-*-* } } } */