From: Kyrylo Tkachov <[email protected]>
vect.exp selects compile-only testing when a target can generate vector code
but cannot execute it. These tests override that choice with dg-do run
whenever _BitInt is available.
On arm-eabi Cortex-M3, the vector options select Armv7-A NEON, but the
link uses M-profile runtime objects. The linker rejects the mixed
architecture profiles.
Require _BitInt without forcing execution. This lets vect.exp compile the
tests on targets without runnable vector hardware and run them on targets
that have it. Apply the same fix to the shifted truncation test, which has
the same latent problem.
Bootstrapped and tested on aarch64-unknown-linux-gnu.
Tested on arm-eabi with Cortex-M3 options.
Pushing to master.
Thanks,
Kyrill
gcc/testsuite/ChangeLog:
* gcc.dg/vect/vect-sat-trunc-range-precision-1.c: Do not force
execution.
* gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c: Likewise.
Signed-off-by: Kyrylo Tkachov <[email protected]>
---
gcc/testsuite/gcc.dg/vect/vect-sat-trunc-range-precision-1.c | 2 +-
gcc/testsuite/gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-range-precision-1.c
b/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-range-precision-1.c
index 33649e9a284..1de56c3b4ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-range-precision-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-range-precision-1.c
@@ -1,4 +1,4 @@
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-additional-options "-O3 -fvect-cost-model=unlimited" } */
typedef __INT8_TYPE__ int8_t;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c
b/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c
index 5d3fcf3ba3b..3aca3d4b58e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sat-trunc-shift-sign-source-1.c
@@ -1,4 +1,4 @@
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-additional-options "-O3 -fvect-cost-model=unlimited" } */
typedef __INT8_TYPE__ int8_t;
--
2.50.1 (Apple Git-155)