public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* -mno-long-calls for arm/no_unique_address tests
@ 2020-12-25  6:23 Alexandre Oliva
  2020-12-29 10:02 ` Richard Sandiford
  0 siblings, 1 reply; 2+ messages in thread
From: Alexandre Oliva @ 2020-12-25  6:23 UTC (permalink / raw)
  To: gcc-patches


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?


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 "**" "" "" } } */
 

-- 
Alexandre Oliva, happy hacker  https://FSFLA.org/blogs/lxo/
   Free Software Activist         GNU Toolchain Engineer
        Vim, Vi, Voltei pro Emacs -- GNUlius Caesar

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: -mno-long-calls for arm/no_unique_address tests
  2020-12-25  6:23 -mno-long-calls for arm/no_unique_address tests Alexandre Oliva
@ 2020-12-29 10:02 ` Richard Sandiford
  0 siblings, 0 replies; 2+ messages in thread
From: Richard Sandiford @ 2020-12-29 10:02 UTC (permalink / raw)
  To: Alexandre Oliva; +Cc: gcc-patches

Alexandre Oliva <oliva@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 "**" "" "" } } */

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-12-29 10:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-25  6:23 -mno-long-calls for arm/no_unique_address tests Alexandre Oliva
2020-12-29 10:02 ` Richard Sandiford

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).