There was a reported regression on x86-64 with -march=cascadelake and -m32 where epilogue vectorization causes a different number of SLPed loops. Fixed by disabling epilogue vectorization for the testcase.
tested on x86_64-unknown-linux-gnu, pushed. * gcc.dg/vect/fast-math-vect-call-2.c: Disable epilogue vectorization. --- gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c index ed42a21cedc..e52ffe435d3 100644 --- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c +++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c @@ -1,4 +1,5 @@ /* { dg-require-effective-target vect_double } */ +/* { dg-additional-options "--param vect-epilogues-nomask=0" } */ #include "tree-vect.h" -- 2.43.0