data-intrinsics-assembly.c forces -march=armv6 using dg-add-options arm_arch_v6, which implicitly adds -mfloat-abi=softfp.
However, for a toolchain configured for arm-linux-gnueabihf and --with-arch=armv7-a, the testcase will fail when including arm_acle.h (which includes stdint.h, which will fail to include the non-existing gnu/stubs-soft.h). Other effective-targets related to arm_acle.h would also pass because they first try without -mfloat-abi=softfp, so it seems the simplest/safest is to add { dg-require-effective-target arm_softfp_ok } to make sure arm_arch_v6_ok's assumption is valid. The patch also fixes what seems to be an oversight in data-intrinsics-armv6.c: it requires arm_arch_v6_ok, but uses arm_arch_v6t2: the patch makes it require arm_arch_v6t2_ok. 2023-05-30 Christophe Lyon <christophe.l...@linaro.org> gcc/testsuite/ * gcc.target/arm/acle/data-intrinsics-armv6.c: Fix typo. * gcc.target/arm/acle/data-intrinsics-assembly.c Require arm_softfp_ok. --- gcc/testsuite/gcc.target/arm/acle/data-intrinsics-armv6.c | 2 +- gcc/testsuite/gcc.target/arm/acle/data-intrinsics-assembly.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-armv6.c b/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-armv6.c index aafdff35cee..988ecac3787 100644 --- a/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-armv6.c +++ b/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-armv6.c @@ -1,5 +1,5 @@ /* { dg-do run } */ -/* { dg-require-effective-target arm_arch_v6_ok } */ +/* { dg-require-effective-target arm_arch_v6t2_ok } */ /* { dg-add-options arm_arch_v6t2 } */ #include "arm_acle.h" diff --git a/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-assembly.c b/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-assembly.c index 3e066877a70..478cbde1600 100644 --- a/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-assembly.c +++ b/gcc/testsuite/gcc.target/arm/acle/data-intrinsics-assembly.c @@ -1,5 +1,6 @@ /* Test the ACLE data intrinsics get expanded to the correct instructions on a specific architecture */ /* { dg-do assemble } */ +/* { dg-require-effective-target arm_softfp_ok } */ /* { dg-require-effective-target arm_arch_v6_ok } */ /* { dg-additional-options "--save-temps -O1" } */ /* { dg-add-options arm_arch_v6 } */ -- 2.34.1