testsuite: fix failing complex add testcases PR103000

Some targets have overriden the default unroll factor and so do not have enough
data to succeed for SLP vectorization if loop vect is turned off.

To fix this just always unroll in these testcases.

gcc/testsuite/ChangeLog:

	PR testsuite/103000
	* gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c:
	Force unroll.
	* gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c: likewise
	* gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c:
	Likewise
	* gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c:
	Likewise.
This commit is contained in:
Tamar Christina 2021-11-01 13:42:51 +00:00
parent bd5e882cf6
commit 8a260d652c
4 changed files with 9 additions and 5 deletions

View file

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target vect_double } */
/* { dg-add-options arm_v8_3a_complex_neon } */
/* { dg-additional-options "-fno-tree-loop-vectorize" } */
/* { dg-additional-options "-fno-tree-loop-vectorize -funroll-loops" } */
/* { dg-add-options arm_v8_1m_mve_fp } */
#define TYPE double

View file

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target vect_float } */
/* { dg-add-options arm_v8_3a_complex_neon } */
/* { dg-additional-options "-fno-tree-loop-vectorize" } */
/* { dg-additional-options "-fno-tree-loop-vectorize -funroll-loops" } */
/* { dg-add-options arm_v8_1m_mve_fp } */
#define TYPE float

View file

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target vect_float } */
/* { dg-add-options arm_v8_3a_complex_neon } */
/* { dg-additional-options "-fno-tree-loop-vectorize" } */
/* { dg-additional-options "-fno-tree-loop-vectorize -funroll-loops" } */
/* { dg-add-options arm_v8_1m_mve_fp } */
#define TYPE float

View file

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target vect_complex_add_half } */
/* { dg-add-options arm_v8_3a_fp16_complex_neon } */
/* { dg-additional-options "-fno-tree-loop-vectorize" } */
/* { dg-additional-options "-fno-tree-loop-vectorize -funroll-loops" } */
/* { dg-add-options arm_v8_1m_mve_fp } */
#define TYPE _Float16
@ -8,6 +9,6 @@
#include "complex-add-pattern-template.c"
/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { target { vect_complex_add_half } } } } */
/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { target { vect_complex_add_byte } && ! target { arm*-*-* } } } } */
/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { target { vect_complex_add_half } && ! target { arm*-*-* } } } } */
/* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" { xfail *-*-* } } } */
/* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */