From: Iain Sandoe Date: Sat, 28 Sep 2019 20:00:22 +0000 (+0000) Subject: [X86, Darwin] Backport fix for pr82920 (part 2). X-Git-Tag: releases/gcc-7.5.0~89 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7a7681f570ba816bbd5237c79ea5608905041d5c;p=thirdparty%2Fgcc.git [X86, Darwin] Backport fix for pr82920 (part 2). Darwin doesn't support mx32, and some tests were failing because it was trying to do them. When we disable this it turns out that quite a few tests requiring mx32 support were not guarded. gcc/ 2019-09-28 Iain Sandoe Backport from mainline. 2019-05-12 Iain Sandoe PR target/82920 * config/i386/darwin.h (CC1_SPEC): Report -mx32 as an error for Darwin. gcc/testsuite/ 2019-09-28 Iain Sandoe Backport from mainline. 2019-05-14 Iain Sandoe PR target/82920 * gcc.target/i386/pr52146.c: Require effective target x32. * 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: r276258 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 813e46a55cfa..0c5e96c61376 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2019-09-28 Iain Sandoe + + Backport from mainline. + 2019-05-12 Iain Sandoe + + PR target/82920 + * config/i386/darwin.h (CC1_SPEC): Report -mx32 as an error for + Darwin. + 2019-09-28 Iain Sandoe Backport from mainline. diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h index c5a068560415..58d059823b84 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 c26b6a32696e..8f18d59a3b61 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,24 @@ +2019-09-28 Iain Sandoe + + Backport from mainline. + 2019-05-14 Iain Sandoe + + PR target/82920 + * gcc.target/i386/pr52146.c: Require effective target x32. + * 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-09-28 Iain Sandoe Backport from mainline. diff --git a/gcc/testsuite/gcc.target/i386/pr52146.c b/gcc/testsuite/gcc.target/i386/pr52146.c index dcc28d007fe6..9bd81368bcdf 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 d5cfa7411127..8d8988fccc34 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 5c23339b66a8..2e8a4afdc105 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 99acf84347d6..62ac5df5eb11 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 6d5e47a94d01..e12c62082e8d 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 e36200af8520..9f36707ecf9f 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 26318677d590..01b02c58a90e 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 387bbeb81fb4..6486ce99a276 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 bfe2c503d83e..190a9423f331 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 a2e2acd858a7..a7d17ed014e3 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 59bdebe690da..62ac0a1d0019 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 617c3e5c5eda..b942324892c1 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 4591dc4d6016..ea84fbd63692 100644 --- a/gcc/testsuite/gcc.target/i386/pr59929.c +++ b/gcc/testsuite/gcc.target/i386/pr59929.c @@ -1,5 +1,5 @@ /* { dg-do run } */ -/* { dg-options "-O0 -mno-accumulate-outgoing-args" } */ +/* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-O0 -mno-accumulate-outgoing-args -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 5c068f3d71b5..3515b6d28929 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 } */