[gcc/devel/omp/gcc-9] Darwin, backport fix for PR82920 part2 (mx32 is not supported)
Tobias Burnus
burnus@gcc.gnu.org
Thu Mar 5 13:55:00 GMT 2020
https://gcc.gnu.org/g:914ded4e816178372eca1a8ca5b5abe01c399aba
commit 914ded4e816178372eca1a8ca5b5abe01c399aba
Author: Iain Sandoe <iain@sandoe.co.uk>
Date: Thu May 30 07:56:10 2019 +0000
Darwin, backport fix for PR82920 part2 (mx32 is not supported)
gcc/
2019-05-30 Iain Sandoe <iain@sandoe.co.uk>
Backport from mainline.
2019-05-12 Iain Sandoe <iain@sandoe.co.uk>
PR target/82920
* config/i386/darwin.h (CC1_SPEC): Report -mx32 as an error for
Darwin.
gcc/testsuite/
2019-05-30 Iain Sandoe <iain@sandoe.co.uk>
Backport from mainline.
2019-05-14 Iain Sandoe <iain@sandoe.co.uk>
PR target/82920
* gcc.target/i386/cet-sjlj-6b.c: Require effective target x32.
* gcc.target/i386/pr52146.c: Likewise.
* gcc.target/i386/pr52698.c: Likewise.
* gcc.target/i386/pr52857-1.c: Likewise.
* gcc.target/i386/pr52857-2.c: Likewise.
* gcc.target/i386/pr52876.c: Likewise.
* gcc.target/i386/pr53698.c: Likewise.
* gcc.target/i386/pr54157.c: Likewise.
* gcc.target/i386/pr55049-1.c: Likewise.
* gcc.target/i386/pr55093.c: Likewise.
* gcc.target/i386/pr55116-1.c: Likewise.
* gcc.target/i386/pr55116-2.c: Likewise.
* gcc.target/i386/pr55597.c: Likewise.
* gcc.target/i386/pr59929.c: Likewise.
* gcc.target/i386/pr66470.c: Likewise.
From-SVN: r271765
Diff:
---
gcc/ChangeLog | 9 +++++++++
gcc/config/i386/darwin.h | 3 ++-
gcc/testsuite/ChangeLog | 22 ++++++++++++++++++++++
gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c | 1 +
gcc/testsuite/gcc.target/i386/pr52146.c | 1 +
gcc/testsuite/gcc.target/i386/pr52698.c | 1 +
gcc/testsuite/gcc.target/i386/pr52857-1.c | 1 +
gcc/testsuite/gcc.target/i386/pr52857-2.c | 1 +
gcc/testsuite/gcc.target/i386/pr52876.c | 1 +
gcc/testsuite/gcc.target/i386/pr53698.c | 1 +
gcc/testsuite/gcc.target/i386/pr54157.c | 1 +
gcc/testsuite/gcc.target/i386/pr55049-1.c | 1 +
gcc/testsuite/gcc.target/i386/pr55093.c | 1 +
gcc/testsuite/gcc.target/i386/pr55116-1.c | 1 +
gcc/testsuite/gcc.target/i386/pr55116-2.c | 1 +
gcc/testsuite/gcc.target/i386/pr55597.c | 1 +
gcc/testsuite/gcc.target/i386/pr59929.c | 1 +
gcc/testsuite/gcc.target/i386/pr66470.c | 1 +
18 files changed, 48 insertions(+), 1 deletion(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fe02099..4093217 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -4,6 +4,15 @@
2019-05-12 Iain Sandoe <iain@sandoe.co.uk>
PR target/82920
+ * config/i386/darwin.h (CC1_SPEC): Report -mx32 as an error for
+ Darwin.
+
+2019-05-30 Iain Sandoe <iain@sandoe.co.uk>
+
+ Backport from mainline.
+ 2019-05-12 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR target/82920
* config/i386/i386.c (ix86_output_jmp_thunk_or_indirect): New.
(ix86_output_indirect_branch_via_reg): Use output mechanism
accounting for __USER_LABEL_PREFIX__.
diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h
index d8e72ec..fe11ec9 100644
--- a/gcc/config/i386/darwin.h
+++ b/gcc/config/i386/darwin.h
@@ -131,7 +131,8 @@ extern int darwin_emit_branch_islands;
#undef CC1_SPEC
#define CC1_SPEC "%(cc1_cpu) \
%{!mkernel:%{!static:%{!mdynamic-no-pic:-fPIC}}} \
- %{g: %{!fno-eliminate-unused-debug-symbols: -feliminate-unused-debug-symbols }} " \
+ %{g: %{!fno-eliminate-unused-debug-symbols: -feliminate-unused-debug-symbols }} \
+ %{mx32:%eDarwin is not an mx32 platform}" \
DARWIN_CC1_SPEC
#undef ASM_SPEC
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index c544530..eea91b1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,6 +1,28 @@
2019-05-30 Iain Sandoe <iain@sandoe.co.uk>
Backport from mainline.
+ 2019-05-14 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR target/82920
+ * gcc.target/i386/cet-sjlj-6b.c: Require effective target x32.
+ * gcc.target/i386/pr52146.c: Likewise.
+ * gcc.target/i386/pr52698.c: Likewise.
+ * gcc.target/i386/pr52857-1.c: Likewise.
+ * gcc.target/i386/pr52857-2.c: Likewise.
+ * gcc.target/i386/pr52876.c: Likewise.
+ * gcc.target/i386/pr53698.c: Likewise.
+ * gcc.target/i386/pr54157.c: Likewise.
+ * gcc.target/i386/pr55049-1.c: Likewise.
+ * gcc.target/i386/pr55093.c: Likewise.
+ * gcc.target/i386/pr55116-1.c: Likewise.
+ * gcc.target/i386/pr55116-2.c: Likewise.
+ * gcc.target/i386/pr55597.c: Likewise.
+ * gcc.target/i386/pr59929.c: Likewise.
+ * gcc.target/i386/pr66470.c: Likewise.
+
+2019-05-30 Iain Sandoe <iain@sandoe.co.uk>
+
+ Backport from mainline.
2019-05-12 Iain Sandoe <iain@sandoe.co.uk>
Dominique d'Humieres <dominiq@gcc.gnu.org>
diff --git a/gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c b/gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c
index 6ec4b83..b2376e7 100644
--- a/gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c
+++ b/gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O -maddress-mode=long -fcf-protection -mx32" } */
/* { dg-final { scan-assembler-times "endbr64" 2 } } */
/* { dg-final { scan-assembler-times "movq\t.*buf\\+16" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr52146.c b/gcc/testsuite/gcc.target/i386/pr52146.c
index dcc28d0..9bd8136 100644
--- a/gcc/testsuite/gcc.target/i386/pr52146.c
+++ b/gcc/testsuite/gcc.target/i386/pr52146.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32" } */
void
diff --git a/gcc/testsuite/gcc.target/i386/pr52698.c b/gcc/testsuite/gcc.target/i386/pr52698.c
index d5cfa74..8d8988f 100644
--- a/gcc/testsuite/gcc.target/i386/pr52698.c
+++ b/gcc/testsuite/gcc.target/i386/pr52698.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/pr52857-1.c b/gcc/testsuite/gcc.target/i386/pr52857-1.c
index 5c23339..2e8a4af 100644
--- a/gcc/testsuite/gcc.target/i386/pr52857-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr52857-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-g -O -mx32 -maddress-mode=long" } */
extern void get_BID128 (int *);
diff --git a/gcc/testsuite/gcc.target/i386/pr52857-2.c b/gcc/testsuite/gcc.target/i386/pr52857-2.c
index 99acf84..62ac5df 100644
--- a/gcc/testsuite/gcc.target/i386/pr52857-2.c
+++ b/gcc/testsuite/gcc.target/i386/pr52857-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-g -O -mx32 -maddress-mode=long" } */
void uw_init_context_1 (void *);
diff --git a/gcc/testsuite/gcc.target/i386/pr52876.c b/gcc/testsuite/gcc.target/i386/pr52876.c
index 249206c..6255b28 100644
--- a/gcc/testsuite/gcc.target/i386/pr52876.c
+++ b/gcc/testsuite/gcc.target/i386/pr52876.c
@@ -1,4 +1,5 @@
/* { dg-do run { target x32 } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/pr53698.c b/gcc/testsuite/gcc.target/i386/pr53698.c
index e36200a..9f36707 100644
--- a/gcc/testsuite/gcc.target/i386/pr53698.c
+++ b/gcc/testsuite/gcc.target/i386/pr53698.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O -mx32 -maddress-mode=long -fno-tree-dominator-opts" } */
extern char foo[];
diff --git a/gcc/testsuite/gcc.target/i386/pr54157.c b/gcc/testsuite/gcc.target/i386/pr54157.c
index 2631867..01b02c5 100644
--- a/gcc/testsuite/gcc.target/i386/pr54157.c
+++ b/gcc/testsuite/gcc.target/i386/pr54157.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long -ftree-vectorize" } */
struct s2{
diff --git a/gcc/testsuite/gcc.target/i386/pr55049-1.c b/gcc/testsuite/gcc.target/i386/pr55049-1.c
index 387bbeb..6486ce9 100644
--- a/gcc/testsuite/gcc.target/i386/pr55049-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr55049-1.c
@@ -1,5 +1,6 @@
/* { dg-do compile { target { ! ia32 } } } */
/* { dg-require-effective-target fpic } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -fPIC -mx32" } */
extern void __morestack_fail (const char *msg);
diff --git a/gcc/testsuite/gcc.target/i386/pr55093.c b/gcc/testsuite/gcc.target/i386/pr55093.c
index bfe2c50..190a942 100644
--- a/gcc/testsuite/gcc.target/i386/pr55093.c
+++ b/gcc/testsuite/gcc.target/i386/pr55093.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
/* { dg-skip-if "different ABI" { x86_64-*-mingw* } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr55116-1.c b/gcc/testsuite/gcc.target/i386/pr55116-1.c
index a2e2acd..a7d17ed0 100644
--- a/gcc/testsuite/gcc.target/i386/pr55116-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr55116-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
int glob_int_arr[100];
diff --git a/gcc/testsuite/gcc.target/i386/pr55116-2.c b/gcc/testsuite/gcc.target/i386/pr55116-2.c
index 59bdebe..62ac0a1 100644
--- a/gcc/testsuite/gcc.target/i386/pr55116-2.c
+++ b/gcc/testsuite/gcc.target/i386/pr55116-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
typedef struct rtx_def *rtx;
diff --git a/gcc/testsuite/gcc.target/i386/pr55597.c b/gcc/testsuite/gcc.target/i386/pr55597.c
index 617c3e5..b942324 100644
--- a/gcc/testsuite/gcc.target/i386/pr55597.c
+++ b/gcc/testsuite/gcc.target/i386/pr55597.c
@@ -1,5 +1,6 @@
/* { dg-do compile { target { ! ia32 } } } */
/* { dg-require-effective-target fpic } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -fPIC -mx32 -maddress-mode=long" } */
struct initial_sp
diff --git a/gcc/testsuite/gcc.target/i386/pr59929.c b/gcc/testsuite/gcc.target/i386/pr59929.c
index 53e0b23..f770d4b 100644
--- a/gcc/testsuite/gcc.target/i386/pr59929.c
+++ b/gcc/testsuite/gcc.target/i386/pr59929.c
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O0 -mno-accumulate-outgoing-args" } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-additional-options "-mx32 -maddress-mode=short" { target x32 } } */
void
diff --git a/gcc/testsuite/gcc.target/i386/pr66470.c b/gcc/testsuite/gcc.target/i386/pr66470.c
index 5c068f3..3515b6d 100644
--- a/gcc/testsuite/gcc.target/i386/pr66470.c
+++ b/gcc/testsuite/gcc.target/i386/pr66470.c
@@ -1,5 +1,6 @@
/* PR target/66470 */
/* { dg-do compile { target { ! ia32 } } } */
+/* { dg-require-effective-target maybe_x32 } */
/* { dg-options "-O2 -mx32 -maddress-mode=long" } */
/* { dg-require-effective-target tls } */
More information about the Gcc-cvs
mailing list