Hi, This patch fixes the problem that the loop in the tsvc s176 function is optimized and removed because `iterations/LEN_1D` is 0 (where iterations is set to 10000, LEN_1D is set to 32000 in tsvc.h).
This testcase passed on x86 and AArch64 system. Best, Lehua gcc/testsuite/ChangeLog: * gcc.dg/vect/tsvc/vect-tsvc-s176.c: adjust iterations --- gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c b/gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c index 79faf7fdb9e4..365e5205982b 100644 --- a/gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c +++ b/gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c @@ -14,7 +14,7 @@ real_t s176(struct args_t * func_args) initialise_arrays(__func__); int m = LEN_1D/2; - for (int nl = 0; nl < 4*(iterations/LEN_1D); nl++) { + for (int nl = 0; nl < 4*(10*iterations/LEN_1D); nl++) { for (int j = 0; j < (LEN_1D/2); j++) { for (int i = 0; i < m; i++) { a[i] += b[i+m-j-1] * c[j]; @@ -39,4 +39,4 @@ int main (int argc, char **argv) return 0; } -/* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" } } */ -- 2.36.1