Some of the testcases in the gcc.dg/vect/complex directory try to match
"stmt.*$internal_fn" in the slp1/vect logs, which leads to many false
positives; this patch changes this to "add new stmt: \[^\n\r]*$internal_fn",
making sure that the log fragments matched in this way are limited to
single lines and correspond to actual newly created GIMPLE statements.
This main change results in some fallout, necessitating the following
additional tweaks:

- For fast-math testcases, replace the "1"s in scan-tree-dump-times
  directives by appropriate counts.
- XFAIL bb-slp and vect testcases featuring integral types,
  since the cadd{90,270} optabs are not implemented for integral modes.
- Disable some FP16 tests for arm targets due to absence of cadd{90,270}
  for V8HF.
- Replace "target { X } && ! target { Y }" selectors with the correct
  "target { X && { ! Y } }" form.
- In bb-slp-complex-add-pattern-long.c, adjust the testcase header to
  match other tests so that different scan-tree-dump-times directives
  can be switched off selectively.
- In bb-slp-complex-add-pattern-long.c, remove an extraneous scan for
  "Found COMPLEX_ADD_ROT90".
- In bb-slp-complex-add-pattern-int.c, use vect_complex_add_int instead of
  vect_complex_add_byte.

Regtested on aarch64 (with and without SVE2) and arm.

gcc/testsuite/ChangeLog:

        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c: Adjust testcase.
        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c: Likewise.
        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c: Likewise.
        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c:
        Likewise.
        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c:
        Likewise.
        * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c:
        Likewise.
        * gcc.dg/vect/complex/complex-add-pattern-template.c: Likewise.
        * gcc.dg/vect/complex/complex-add-template.c: Likewise.
        * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c: Likewise.
        * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c: Likewise.
        * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c:
        Likewise.
        * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.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.
        * gcc.dg/vect/complex/fast-math-complex-add-double.c: Likewise.
        * gcc.dg/vect/complex/fast-math-complex-add-float.c: Likewise.
        * gcc.dg/vect/complex/fast-math-complex-add-half-float.c: Likewise.
        * gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c: Likewise.
        * gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c: Likewise.
        * gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c:
        * gcc.dg/vect/complex/vect-complex-add-pattern-byte.c: Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-int.c: Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-long.c: Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-short.c: Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c:
        Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c: Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c:
        Likewise.
        * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c:
        Likewise.
---
 .../gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c  | 4 ++--
 .../gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c | 8 ++++----
 .../vect/complex/bb-slp-complex-add-pattern-short.c       | 4 ++--
 .../complex/bb-slp-complex-add-pattern-unsigned-int.c     | 4 ++--
 .../complex/bb-slp-complex-add-pattern-unsigned-long.c    | 4 ++--
 .../complex/bb-slp-complex-add-pattern-unsigned-short.c   | 4 ++--
 .../gcc.dg/vect/complex/complex-add-pattern-template.c    | 8 ++++----
 gcc/testsuite/gcc.dg/vect/complex/complex-add-template.c  | 8 ++++----
 .../vect/complex/fast-math-bb-slp-complex-add-double.c    | 4 ++--
 .../vect/complex/fast-math-bb-slp-complex-add-float.c     | 4 ++--
 .../complex/fast-math-bb-slp-complex-add-half-float.c     | 4 ++--
 .../complex/fast-math-bb-slp-complex-add-pattern-double.c | 4 ++--
 .../complex/fast-math-bb-slp-complex-add-pattern-float.c  | 4 ++--
 .../fast-math-bb-slp-complex-add-pattern-half-float.c     | 4 ++--
 .../gcc.dg/vect/complex/fast-math-complex-add-double.c    | 4 ++--
 .../gcc.dg/vect/complex/fast-math-complex-add-float.c     | 4 ++--
 .../vect/complex/fast-math-complex-add-half-float.c       | 4 ++--
 .../vect/complex/fast-math-complex-add-pattern-double.c   | 4 ++--
 .../vect/complex/fast-math-complex-add-pattern-float.c    | 4 ++--
 .../complex/fast-math-complex-add-pattern-half-float.c    | 4 ++--
 .../gcc.dg/vect/complex/vect-complex-add-pattern-byte.c   | 4 ++--
 .../gcc.dg/vect/complex/vect-complex-add-pattern-int.c    | 4 ++--
 .../gcc.dg/vect/complex/vect-complex-add-pattern-long.c   | 4 ++--
 .../gcc.dg/vect/complex/vect-complex-add-pattern-short.c  | 4 ++--
 .../vect/complex/vect-complex-add-pattern-unsigned-byte.c | 4 ++--
 .../vect/complex/vect-complex-add-pattern-unsigned-int.c  | 4 ++--
 .../vect/complex/vect-complex-add-pattern-unsigned-long.c | 4 ++--
 .../complex/vect-complex-add-pattern-unsigned-short.c     | 4 ++--
 28 files changed, 62 insertions(+), 62 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c
index cead05f1cc4..d12e4d988ca 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c
@@ -9,7 +9,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_byte } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_int } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_int } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_int && { ! aarch64_sve2 } } xfail { *-*-* } 
} } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c
index 0d21f57666e..eaaee5c9122 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c
@@ -1,6 +1,7 @@
 /* { dg-do compile } */
-/* { dg-require-effective-target vect_complex_add_long } */
 /* { dg-require-effective-target stdint_types } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-additional-options "-fno-tree-loop-vectorize" } */
 /* { dg-add-options arm_v8_3a_complex_neon } */
 
 #define UNROLL
@@ -10,8 +11,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_long } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_long } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_long } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_long && { ! aarch64_sve2 } } xfail { *-*-* } 
} } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" { target { 
vect_long_long } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" { target { 
vect_long_long } } } } */
-/* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" { target { 
vect_long_long } } } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c
index 8928386a517..0cc4f6e4e69 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c
@@ -11,7 +11,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_short } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_short } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_short } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_short && { ! aarch64_sve2 } } xfail { *-*-* 
} } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c
index 4ab4b9a446a..388f37eb30d 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c
@@ -11,7 +11,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_int } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_int } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_int } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_int && { ! aarch64_sve2 } } xfail { *-*-* } 
} } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c
index 38aa9c0b9d5..c44e774deb5 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c
@@ -10,7 +10,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_long } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_long } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_long } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_long && { ! aarch64_sve2 } } xfail { *-*-* } 
} } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" { target { 
vect_long_long } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" { target { 
vect_long_long } } } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c
index 8846c9889fb..14d88cf52f8 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c
@@ -11,7 +11,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_short } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_short } && ! target { aarch64_sve2 } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { target { vect_complex_add_short } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { target { vect_complex_add_short && { ! aarch64_sve2 } } xfail { *-*-* 
} } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/complex-add-pattern-template.c 
b/gcc/testsuite/gcc.dg/vect/complex/complex-add-pattern-template.c
index 658af294f1c..9b9f0a4a7d8 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/complex-add-pattern-template.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/complex-add-pattern-template.c
@@ -10,7 +10,7 @@ void add90 (TYPE a[restrict N], TYPE b[restrict N], TYPE 
c[restrict N])
     }
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 1 "vect" } } */
 
 void add270 (TYPE a[restrict N], TYPE b[restrict N], TYPE c[restrict N])
 {
@@ -24,7 +24,7 @@ void add270 (TYPE a[restrict N], TYPE b[restrict N], TYPE 
c[restrict N])
     }
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" } } */
 
 void addMixed (TYPE a[restrict N], TYPE b[restrict N], TYPE c[restrict N])
 {
@@ -55,7 +55,7 @@ void add90HandUnrolled (TYPE a[restrict N], TYPE b[restrict 
N],
     }
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 1 "vect" } } */
 
 void add90Hybrid (TYPE a[restrict N], TYPE b[restrict N], TYPE c[restrict N],
                  TYPE d[restrict N])
@@ -72,4 +72,4 @@ void add90Hybrid (TYPE a[restrict N], TYPE b[restrict N], 
TYPE c[restrict N],
     }
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 2 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 2 "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/complex-add-template.c 
b/gcc/testsuite/gcc.dg/vect/complex/complex-add-template.c
index f37ab98813f..3870196b9fb 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/complex-add-template.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/complex-add-template.c
@@ -20,7 +20,7 @@ void add90snd (_Complex TYPE a[restrict N], _Complex TYPE 
b[restrict N],
     c[i] = a[i] + (b[i] * I);
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 1 "vect" } } */
 
 void add180snd (_Complex TYPE a[restrict N], _Complex TYPE b[restrict N],
                _Complex TYPE c[restrict N])
@@ -42,7 +42,7 @@ void add270snd (_Complex TYPE a[restrict N], _Complex TYPE 
b[restrict N],
     c[i] = a[i] + (b[i] * I * I * I);
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" } } */
 
 void add90fst (_Complex TYPE a[restrict N], _Complex TYPE b[restrict N],
               _Complex TYPE c[restrict N])
@@ -54,7 +54,7 @@ void add90fst (_Complex TYPE a[restrict N], _Complex TYPE 
b[restrict N],
     c[i] = (a[i] * I) + b[i];
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 1 "vect" } } */
 
 void add180fst (_Complex TYPE a[restrict N], _Complex TYPE b[restrict N],
                _Complex TYPE c[restrict N])
@@ -76,7 +76,7 @@ void add270fst (_Complex TYPE a[restrict N], _Complex TYPE 
b[restrict N],
     c[i] = (a[i] * I * I * I) + b[i];
 }
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" } } */
 
 void addconjfst (_Complex TYPE a[restrict N], _Complex TYPE b[restrict N],
                 _Complex TYPE c[restrict N])
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c
index fd5bd9b2da0..ec8109c9b51 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c
@@ -9,8 +9,8 @@
 #define N 16
 #include "complex-add-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_double } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_double } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 32 "slp1" { target { vect_complex_add_double } } } 
} */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 32 "slp1" { target { vect_complex_add_double } } } 
} */
 
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c
index a859b233030..40b79f5c5d9 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c
@@ -9,7 +9,7 @@
 #define N 16
 #include "complex-add-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_float } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_float } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 16 "slp1" { target { vect_complex_add_float } } } } 
*/
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 16 "slp1" { target { vect_complex_add_float } } } 
} */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c
index 12df361c06d..c486fba13d7 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c
@@ -10,5 +10,5 @@
 
 /* Vectorization is failing for these cases.  They should work but for now 
ignore.  */
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
xfail *-*-* } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
xfail *-*-* } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"slp1" { xfail *-*-* } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"slp1" { xfail *-*-* } } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c
 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c
index 2cd7eb25b3e..7678e26bec0 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c
@@ -9,7 +9,7 @@
 #define N 16
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_double } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_double } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 20 "slp1" { target { vect_complex_add_double } } } 
} */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 8 "slp1" { target { vect_complex_add_double } } } 
} */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c
 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c
index 6e560d8778e..65d8c3956d9 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c
@@ -9,7 +9,7 @@
 #define N 16
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "slp1" { 
target { vect_complex_add_float } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "slp1" { 
target { vect_complex_add_float } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 10 "slp1" { target { vect_complex_add_float } } } } 
*/
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 4 "slp1" { target { vect_complex_add_float } } } } 
*/
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c
 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c
index e90d10e584f..2e0ff5b3e8d 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c
@@ -10,7 +10,7 @@
 #define N 16
 #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_half } && ! target { arm*-*-* } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 5 "slp1" { target { vect_complex_add_half && { ! 
arm*-*-* } } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 2 "slp1" { target { vect_complex_add_half && { ! 
arm*-*-* } } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "slp1" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "slp1" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-double.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-double.c
index c95c573d560..32ef5faeaa8 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-double.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-double.c
@@ -7,7 +7,7 @@
 #define N 200
 #include "complex-add-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_double } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect"  { 
target { vect_complex_add_double } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 2 "vect" { target { vect_complex_add_double } } } 
} */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 2 "vect"  { target { vect_complex_add_double } } } 
} */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-float.c
index 954644b82f9..e9fd02ea88e 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-float.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-float.c
@@ -7,7 +7,7 @@
 #define N 200
 #include "complex-add-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_float } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_float } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 2 "vect" { target { vect_complex_add_float } } } } 
*/
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 2 "vect" { target { vect_complex_add_float } } } } 
*/
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-half-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-half-float.c
index a773e796ddc..4d9cd425932 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-half-float.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-half-float.c
@@ -8,5 +8,5 @@
 #define N 200
 #include "complex-add-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 2 "vect" { target { !arm*-*-* } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 2 "vect" { target { !arm*-*-* } } } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c
index 2dede5c7639..8e98b85f590 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c
@@ -7,7 +7,7 @@
 #define N 200
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_double } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_double } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 4 "vect" { target { vect_complex_add_double } } } } 
*/
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" { target { vect_complex_add_double } } } 
} */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c
index 73f2f07d7df..3415cc2287a 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c
@@ -7,7 +7,7 @@
 #define N 200
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_float } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_float } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 3 "vect" { target { vect_complex_add_float } } } } 
*/
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" { target { vect_complex_add_float } } } } 
*/
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c
index e634da93873..32aca36bf86 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c
@@ -8,8 +8,8 @@
 #define N 200
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_half } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_half } && ! target { arm*-*-* } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT90" 3 "vect" { target { vect_complex_add_half && { 
!arm*-*-* } } } } } */
+/* { dg-final { scan-tree-dump-times "add new stmt: 
\[^\n\r]*COMPLEX_ADD_ROT270" 1 "vect" { target { vect_complex_add_half && { ! 
arm*-*-* } } } } }  */
 
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-byte.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-byte.c
index bf7c135fa1a..cf2c5de35b2 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-byte.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-byte.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_byte } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_byte } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_byte } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_byte } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-int.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-int.c
index 2fd2a9f0617..9a147716fb1 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-int.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-int.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_int } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_int } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_int } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_int } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-long.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-long.c
index 70977155256..d7177cd8601 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-long.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-long.c
@@ -9,7 +9,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_long } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_long } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_long } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_long } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" { target { 
vect_long_long } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" { target { 
vect_long_long } } } } */
diff --git a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-short.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-short.c
index 8cbb8ac0c19..12554d151bb 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-short.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-short.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_short } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_short } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_short } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_short } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c
index 9477f0d92d8..2b8c1decfa4 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_byte } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_byte } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_byte } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_byte } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c
index 41f60042ee9..adef69aa9ff 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_int } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_int } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_int } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_int } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c
index 7708ac495b8..e3d9ceec6ec 100644
--- a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c
+++ b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c
@@ -9,7 +9,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_long } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_long } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_long } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_long } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" { target { 
vect_long_long } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" { target { 
vect_long_long } } } } */
diff --git 
a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c
index 6260be4d121..ad0e4cd222a 100644
--- 
a/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c
+++ 
b/gcc/testsuite/gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c
@@ -8,7 +8,7 @@
 #include <stdint.h>
 #include "complex-add-pattern-template.c"
 
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT90" 1 "vect" { 
target { vect_complex_add_short } } } } */
-/* { dg-final { scan-tree-dump-times "stmt.*COMPLEX_ADD_ROT270" 1 "vect" { 
target { vect_complex_add_short } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT90" 
"vect" { target { vect_complex_add_short } xfail { *-*-* } } } } */
+/* { dg-final { scan-tree-dump "add new stmt: \[^\n\r]*COMPLEX_ADD_ROT270" 
"vect" { target { vect_complex_add_short } xfail { *-*-* } } } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */
 /* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT90" "vect" } } */
-- 
2.43.0

Reply via email to