The failures in this PR were from forcing { dg-do run } even when vect.exp chooses options that are incompatible with the runtime. The default vect.exp behaviour is to execute when possible, so there's no need for a dg-do at all.
The patch removes other unconditional { dg-do run }s too. Many of them were already failing in the same way. Also, the dg-do run condition in vect-reduc-or* seems unnecessary: the test should run correctly whatever happens, and the scan tests are already guarded properly. Tested on aarch64-linux-gnu, arm-non-eabi, x86_64-linux-gnu and powerpc64le-linux-gnu. OK to install? Richard 2018-01-23 Richard Sandiford <richard.sandif...@linaro.org> gcc/testsuite/ PR testsuite/83889 * gcc.dg/vect/pr79920.c: Remove explicit dg-do run. * gcc.dg/vect/pr80631-1.c: Likewise. * gcc.dg/vect/pr80631-2.c: Likewise. * gcc.dg/vect/pr81410.c: Likewise. * gcc.dg/vect/pr81633.c: Likewise. * gcc.dg/vect/pr81815.c: Likewise. * gcc.dg/vect/pr82108.c: Likewise. * gcc.dg/vect/pr83857.c: Likewise. * gcc.dg/vect/vect-alias-check-8.c: Likewise. * gcc.dg/vect/vect-alias-check-9.c: Likewise. * gcc.dg/vect/vect-alias-check-10.c: Likewise. * gcc.dg/vect/vect-alias-check-11.c: Likewise. * gcc.dg/vect/vect-alias-check-12.c: Likewise. * gcc.dg/vect/vect-reduc-11.c: Likewise. * gcc.dg/vect/vect-tail-nomask-1.c: Likewise. * gcc.dg/vect/vect-reduc-in-order-1.c: Remove dg-do run and use dg-xfail-run-if instead. * gcc.dg/vect/vect-reduc-in-order-2.c: Likewise. * gcc.dg/vect/vect-reduc-in-order-3.c: Likewise. * gcc.dg/vect/vect-reduc-in-order-4.c: Likewise. * gcc.dg/vect/vect-reduc-or_1.c: Remove conditional dg-do run. * gcc.dg/vect/vect-reduc-or_2.c: Likewise. Index: gcc/testsuite/gcc.dg/vect/pr79920.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr79920.c 2018-01-15 12:38:45.039094423 +0000 +++ gcc/testsuite/gcc.dg/vect/pr79920.c 2018-01-23 11:29:38.977575495 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-additional-options "-O3 -fno-fast-math" } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/pr80631-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr80631-1.c 2018-01-13 17:59:52.122334084 +0000 +++ gcc/testsuite/gcc.dg/vect/pr80631-1.c 2018-01-23 11:29:38.977575495 +0000 @@ -1,5 +1,4 @@ /* PR tree-optimization/80631 */ -/* { dg-do run } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/pr80631-2.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr80631-2.c 2017-12-14 00:04:52.323446529 +0000 +++ gcc/testsuite/gcc.dg/vect/pr80631-2.c 2018-01-23 11:29:38.977575495 +0000 @@ -1,5 +1,4 @@ /* PR tree-optimization/80631 */ -/* { dg-do run } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/pr81410.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr81410.c 2017-07-27 10:37:55.334036950 +0100 +++ gcc/testsuite/gcc.dg/vect/pr81410.c 2018-01-23 11:29:38.977575495 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-require-effective-target vect_long_long } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/pr81633.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr81633.c 2017-08-03 10:40:54.014105333 +0100 +++ gcc/testsuite/gcc.dg/vect/pr81633.c 2018-01-23 11:29:38.977575495 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - static double identity[4][4] = {{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, Index: gcc/testsuite/gcc.dg/vect/pr81815.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr81815.c 2017-08-16 08:50:54.197549943 +0100 +++ gcc/testsuite/gcc.dg/vect/pr81815.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - int __attribute__ ((noinline, noclone)) f (int *x, int n) { Index: gcc/testsuite/gcc.dg/vect/pr82108.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr82108.c 2017-09-06 20:47:38.380589062 +0100 +++ gcc/testsuite/gcc.dg/vect/pr82108.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-require-effective-target vect_float } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/pr83857.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr83857.c 2018-01-16 15:13:24.937622282 +0000 +++ gcc/testsuite/gcc.dg/vect/pr83857.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-additional-options "-ffast-math" } */ #define N 100 Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c 2018-01-13 18:02:00.945360390 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - #define N 200 #define DIST 32 Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c 2018-01-13 18:02:00.945360390 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - #define N 200 #define M 4 Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c 2018-01-13 18:02:00.944360429 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - #define N 87 #define M 6 Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c 2018-01-13 18:02:00.944360429 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - #define N 87 #define M 6 Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c 2018-01-13 18:02:00.945360390 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c 2018-01-23 11:29:38.978575453 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run } */ - #define N 87 #define M 7 Index: gcc/testsuite/gcc.dg/vect/vect-reduc-11.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-11.c 2017-07-27 10:37:55.334036950 +0100 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-11.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-require-effective-target vect_int } */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/vect-tail-nomask-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-tail-nomask-1.c 2018-01-16 09:27:09.046519360 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-tail-nomask-1.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,3 @@ -/* { dg-do run } */ /* { dg-require-weak "" } */ /* { dg-skip-if "No undefined weak" { hppa*-*-hpux* && { ! lp64 } } } */ /* { dg-skip-if "No undefined weak" { nvptx-*-* } } */ Index: gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-1.c 2018-01-13 18:01:15.294116882 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-1.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,4 @@ -/* { dg-do run { xfail { { i?86-*-* x86_64-*-* } && ia32 } } } */ +/* { dg-xfail-run-if "" { { i?86-*-* x86_64-*-* } && ia32 } } */ /* { dg-require-effective-target vect_double } */ /* { dg-add-options ieee } */ /* { dg-additional-options "-fno-fast-math" } */ Index: gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-2.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-2.c 2018-01-13 18:01:15.294116882 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-2.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,4 @@ -/* { dg-do run { xfail { { i?86-*-* x86_64-*-* } && ia32 } } } */ +/* { dg-xfail-run-if "" { { i?86-*-* x86_64-*-* } && ia32 } } */ /* { dg-require-effective-target vect_double } */ /* { dg-add-options ieee } */ /* { dg-additional-options "-fno-fast-math" } */ Index: gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-3.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-3.c 2018-01-13 18:01:15.294116882 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-3.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,4 @@ -/* { dg-do run { xfail { { i?86-*-* x86_64-*-* } && ia32 } } } */ +/* { dg-xfail-run-if "" { { i?86-*-* x86_64-*-* } && ia32 } } */ /* { dg-require-effective-target vect_double } */ /* { dg-add-options ieee } */ /* { dg-additional-options "-fno-fast-math" } */ Index: gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-4.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-4.c 2018-01-13 18:01:15.294116882 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-in-order-4.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,4 +1,4 @@ -/* { dg-do run { xfail { { i?86-*-* x86_64-*-* } && ia32 } } } */ +/* { dg-xfail-run-if "" { { i?86-*-* x86_64-*-* } && ia32 } } */ /* { dg-require-effective-target vect_double } */ /* { dg-add-options ieee } */ /* { dg-additional-options "-fno-fast-math" } */ Index: gcc/testsuite/gcc.dg/vect/vect-reduc-or_1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-or_1.c 2018-01-13 17:58:35.049273040 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-or_1.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run { target { whole_vector_shift || vect_logical_reduc } } } */ - /* Write a reduction loop to be reduced using vector shifts. */ #include "tree-vect.h" Index: gcc/testsuite/gcc.dg/vect/vect-reduc-or_2.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-reduc-or_2.c 2018-01-13 17:58:35.049273040 +0000 +++ gcc/testsuite/gcc.dg/vect/vect-reduc-or_2.c 2018-01-23 11:29:38.979575410 +0000 @@ -1,5 +1,3 @@ -/* { dg-do run { target { whole_vector_shift || vect_logical_reduc } } } */ - /* Write a reduction loop to be reduced using vector shifts and folded. */ #include "tree-vect.h"