On arm, overriding -march can lead to warnings if the testsuite options try to pass -mcpu. Avoid these by ensuring the -mcpu is unset before adding the architecture.
Also, improve the compatibility of asm-hard-reg-error-3.c for hard-float environment by allowing FP instructions in the architecture. gcc/testsuite: * gcc.dg/asm-hard-reg-4.c: On Arm, unset the CPU before setting the arch. * gcc.dg/asm-hard-reg-error-3.c: Similarly. Also add floating-point instructions to aid hard-float variants. Match on arm* not just arm. --- gcc/testsuite/gcc.dg/asm-hard-reg-4.c | 2 +- gcc/testsuite/gcc.dg/asm-hard-reg-error-3.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/testsuite/gcc.dg/asm-hard-reg-4.c b/gcc/testsuite/gcc.dg/asm-hard-reg-4.c index d319467d601..01ae3ad5a7a 100644 --- a/gcc/testsuite/gcc.dg/asm-hard-reg-4.c +++ b/gcc/testsuite/gcc.dg/asm-hard-reg-4.c @@ -6,7 +6,7 @@ /* { dg-final { scan-assembler-times "foo\tv5" 4 { target { aarch64*-*-* } } } } */ #elif defined (__arm__) # define FPR "{d5}" -/* { dg-additional-options "-march=armv7-a+fp -mfloat-abi=hard" { target arm*-*-* } } */ +/* { dg-additional-options "-mcpu=unset -march=armv7-a+fp -mfloat-abi=hard" { target arm*-*-* } } */ /* { dg-final { scan-assembler-times "foo\ts10" 4 { target { arm*-*-* } } } } */ #elif defined (__powerpc__) || defined (__POWERPC__) # define FPR "{5}" diff --git a/gcc/testsuite/gcc.dg/asm-hard-reg-error-3.c b/gcc/testsuite/gcc.dg/asm-hard-reg-error-3.c index b4254e36381..d3962bdc344 100644 --- a/gcc/testsuite/gcc.dg/asm-hard-reg-error-3.c +++ b/gcc/testsuite/gcc.dg/asm-hard-reg-error-3.c @@ -1,6 +1,6 @@ -/* { dg-do compile { target arm-*-* s390-*-* } } */ +/* { dg-do compile { target arm*-*-* s390-*-* } } */ /* { dg-options "-std=c99" } we need long long */ -/* { dg-additional-options "-march=armv7-a -marm" { target arm-*-* } } */ +/* { dg-additional-options "-mcpu=unset -march=armv7-a+fp -marm" { target arm*-*-* } } */ /* Test register pairs. */ -- 2.43.0