Alexandre Oliva <ol...@adacore.com> writes: > The implicit -mlong-calls from our vxworks configurations makes the > tail-call instructions differ from those expected by the > no_unique_address tests in gcc.target/arm. > > This patch adds -mno-long-calls to the compilation commands, so that > we generate the expected sequences. > > Regstrapped on x86_64-linux-gnu, also tested on arm-vxworks7r2. > Ok to install?
OK, thanks. The dg-bogus parts shouldn't of course depend on -mlong-calls, but they shouldn't depend on -O or -foptimize-sibling-calls either. It seems unlikely that there is any hidden interaction between -mlong-calls and no_unique_address, and if we find one later, we can always add tests for it then. Richard > for gcc/testsuite/ChangeLog > > * gcc.target/arm/no_unique_address_1.C: Add -mno-long-calls. > * gcc.target/arm/no_unique_address_2.C: Likewise. > --- > gcc/testsuite/g++.target/arm/no_unique_address_1.C | 2 +- > gcc/testsuite/g++.target/arm/no_unique_address_2.C | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/gcc/testsuite/g++.target/arm/no_unique_address_1.C > b/gcc/testsuite/g++.target/arm/no_unique_address_1.C > index 038aa00a499e9..40fc68b374521 100644 > --- a/gcc/testsuite/g++.target/arm/no_unique_address_1.C > +++ b/gcc/testsuite/g++.target/arm/no_unique_address_1.C > @@ -1,5 +1,5 @@ > /* { dg-require-effective-target arm_arch_v8a_hard_ok } */ > -/* { dg-options "-std=c++11 -O -foptimize-sibling-calls" } */ > +/* { dg-options "-std=c++11 -O -foptimize-sibling-calls -mno-long-calls" } */ > /* { dg-add-options arm_arch_v8a_hard } */ > /* { dg-final { check-function-bodies "**" "" "" } } */ > > diff --git a/gcc/testsuite/g++.target/arm/no_unique_address_2.C > b/gcc/testsuite/g++.target/arm/no_unique_address_2.C > index 8be5de2539a38..b66b4d004965b 100644 > --- a/gcc/testsuite/g++.target/arm/no_unique_address_2.C > +++ b/gcc/testsuite/g++.target/arm/no_unique_address_2.C > @@ -1,5 +1,5 @@ > /* { dg-require-effective-target arm_arch_v8a_hard_ok } */ > -/* { dg-options "-std=c++17 -O -foptimize-sibling-calls" } */ > +/* { dg-options "-std=c++17 -O -foptimize-sibling-calls -mno-long-calls" } */ > /* { dg-add-options arm_arch_v8a_hard } */ > /* { dg-final { check-function-bodies "**" "" "" } } */