public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/aoliva/heads/testme)] compile gcc.target/arm/{pr78255-2.c, memset-inline-2.c} with -mno-long-calls
@ 2020-12-18 14:47 Alexandre Oliva
0 siblings, 0 replies; 3+ messages in thread
From: Alexandre Oliva @ 2020-12-18 14:47 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:11876a416ded66f81b38b0a0cc2365228b0745fc
commit 11876a416ded66f81b38b0a0cc2365228b0745fc
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri Dec 18 11:39:53 2020 -0300
compile gcc.target/arm/{pr78255-2.c,memset-inline-2.c} with -mno-long-calls
If the target is configured such that -mlong-call is passed
by default, the function calls these tests are trying to detect
by scanning the assembly file are performed using long calls,
like so:
| foo:
| @ memset-inline-2.c:12: memset (a, -1, 14);
| mov r2, #14 @,
| mvn r1, #0 @,
| ldr r0, .L2 @,
| ldr r3, .L2+4 @ tmp112,
| bx r3 @ tmp112
Looking at .L2 (and in particular at .L2+4):
| .L2:
| .word a
| .word memset <<<---
This change adds -mno-long-calls to the list of compiler options
to make sure we generate short call code, allowing the assembly
matching to pass.
This is added unconditionally to the dg-options (as opposed to using
dg-additional-options) because this test is already specific to ARM
targets, and -mno-long-calls is available on all ARM targets.
for gcc/testsuite/ChangeLog
* gcc.target/arm/memset-inline-2.c: Add -mno-long-calls to
the test's dg-options.
* gcc.target/arm/pr78255-2.c: Likewise.
Diff:
---
gcc/testsuite/gcc.target/arm/memset-inline-2.c | 2 +-
gcc/testsuite/gcc.target/arm/pr78255-2.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/testsuite/gcc.target/arm/memset-inline-2.c b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
index b8195cab8a6..ba1f7ed1f1e 100644
--- a/gcc/testsuite/gcc.target/arm/memset-inline-2.c
+++ b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-save-temps -Os -fno-inline" } */
+/* { dg-options "-save-temps -Os -fno-inline -mno-long-calls" } */
#include <string.h>
#include <stdlib.h>
diff --git a/gcc/testsuite/gcc.target/arm/pr78255-2.c b/gcc/testsuite/gcc.target/arm/pr78255-2.c
index cc1c1801c37..fd379aecf9c 100644
--- a/gcc/testsuite/gcc.target/arm/pr78255-2.c
+++ b/gcc/testsuite/gcc.target/arm/pr78255-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -mno-long-calls" } */
extern int bar (void *);
^ permalink raw reply [flat|nested] 3+ messages in thread
* [gcc(refs/users/aoliva/heads/testme)] compile gcc.target/arm/{pr78255-2.c, memset-inline-2.c} with -mno-long-calls
@ 2021-01-01 1:30 Alexandre Oliva
0 siblings, 0 replies; 3+ messages in thread
From: Alexandre Oliva @ 2021-01-01 1:30 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:4f7f012eaf300c9227122c699aed1a41fcba6c0a
commit 4f7f012eaf300c9227122c699aed1a41fcba6c0a
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Dec 31 21:38:05 2020 -0300
compile gcc.target/arm/{pr78255-2.c,memset-inline-2.c} with -mno-long-calls
If the target is configured such that -mlong-call is passed
by default, the function calls these tests are trying to detect
by scanning the assembly file are performed using long calls,
like so:
| foo:
| @ memset-inline-2.c:12: memset (a, -1, 14);
| mov r2, #14 @,
| mvn r1, #0 @,
| ldr r0, .L2 @,
| ldr r3, .L2+4 @ tmp112,
| bx r3 @ tmp112
Looking at .L2 (and in particular at .L2+4):
| .L2:
| .word a
| .word memset <<<---
This change adds -mno-long-calls to the list of compiler options
to make sure we generate short call code, allowing the assembly
matching to pass.
This is added unconditionally to the dg-options (as opposed to using
dg-additional-options) because this test is already specific to ARM
targets, and -mno-long-calls is available on all ARM targets.
for gcc/testsuite/ChangeLog
* gcc.target/arm/memset-inline-2.c: Add -mno-long-calls to
the test's dg-options.
* gcc.target/arm/pr78255-2.c: Likewise.
Diff:
---
gcc/testsuite/gcc.target/arm/memset-inline-2.c | 2 +-
gcc/testsuite/gcc.target/arm/pr78255-2.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/testsuite/gcc.target/arm/memset-inline-2.c b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
index b8195cab8a6..ba1f7ed1f1e 100644
--- a/gcc/testsuite/gcc.target/arm/memset-inline-2.c
+++ b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-save-temps -Os -fno-inline" } */
+/* { dg-options "-save-temps -Os -fno-inline -mno-long-calls" } */
#include <string.h>
#include <stdlib.h>
diff --git a/gcc/testsuite/gcc.target/arm/pr78255-2.c b/gcc/testsuite/gcc.target/arm/pr78255-2.c
index cc1c1801c37..fd379aecf9c 100644
--- a/gcc/testsuite/gcc.target/arm/pr78255-2.c
+++ b/gcc/testsuite/gcc.target/arm/pr78255-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -mno-long-calls" } */
extern int bar (void *);
^ permalink raw reply [flat|nested] 3+ messages in thread
* [gcc(refs/users/aoliva/heads/testme)] compile gcc.target/arm/{pr78255-2.c, memset-inline-2.c} with -mno-long-calls
@ 2020-12-25 1:46 Alexandre Oliva
0 siblings, 0 replies; 3+ messages in thread
From: Alexandre Oliva @ 2020-12-25 1:46 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:1f71ba60129b114fe444e70b3f5b445a31062be2
commit 1f71ba60129b114fe444e70b3f5b445a31062be2
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Dec 24 22:43:29 2020 -0300
compile gcc.target/arm/{pr78255-2.c,memset-inline-2.c} with -mno-long-calls
If the target is configured such that -mlong-call is passed
by default, the function calls these tests are trying to detect
by scanning the assembly file are performed using long calls,
like so:
| foo:
| @ memset-inline-2.c:12: memset (a, -1, 14);
| mov r2, #14 @,
| mvn r1, #0 @,
| ldr r0, .L2 @,
| ldr r3, .L2+4 @ tmp112,
| bx r3 @ tmp112
Looking at .L2 (and in particular at .L2+4):
| .L2:
| .word a
| .word memset <<<---
This change adds -mno-long-calls to the list of compiler options
to make sure we generate short call code, allowing the assembly
matching to pass.
This is added unconditionally to the dg-options (as opposed to using
dg-additional-options) because this test is already specific to ARM
targets, and -mno-long-calls is available on all ARM targets.
for gcc/testsuite/ChangeLog
* gcc.target/arm/memset-inline-2.c: Add -mno-long-calls to
the test's dg-options.
* gcc.target/arm/pr78255-2.c: Likewise.
Diff:
---
gcc/testsuite/gcc.target/arm/memset-inline-2.c | 2 +-
gcc/testsuite/gcc.target/arm/pr78255-2.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/testsuite/gcc.target/arm/memset-inline-2.c b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
index b8195cab8a6..ba1f7ed1f1e 100644
--- a/gcc/testsuite/gcc.target/arm/memset-inline-2.c
+++ b/gcc/testsuite/gcc.target/arm/memset-inline-2.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-save-temps -Os -fno-inline" } */
+/* { dg-options "-save-temps -Os -fno-inline -mno-long-calls" } */
#include <string.h>
#include <stdlib.h>
diff --git a/gcc/testsuite/gcc.target/arm/pr78255-2.c b/gcc/testsuite/gcc.target/arm/pr78255-2.c
index cc1c1801c37..fd379aecf9c 100644
--- a/gcc/testsuite/gcc.target/arm/pr78255-2.c
+++ b/gcc/testsuite/gcc.target/arm/pr78255-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -mno-long-calls" } */
extern int bar (void *);
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-01-01 1:30 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-18 14:47 [gcc(refs/users/aoliva/heads/testme)] compile gcc.target/arm/{pr78255-2.c, memset-inline-2.c} with -mno-long-calls Alexandre Oliva
2020-12-25 1:46 Alexandre Oliva
2021-01-01 1:30 Alexandre Oliva
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).