With the understanding that we have preapproval to install testsuite patches that add misisng fpic requires, I'm going ahead and installing this patch. I've tested it on x86_64-linux-gnu and on ppc64-vx7r2.
for gcc/testsuite/ChangeLog * gcc.target/powerpc/compress-float-ppc-pic.c: Add dg-require-effective-target fpic. * gcc.target/powerpc/ppc-eabi.c: Likewise. * gcc.target/powerpc/pr26350.c: Likewise. * gcc.target/powerpc/pr67789.c: Likewise. * gcc.target/powerpc/pr79439-1.c: Likewise. * gcc.target/powerpc/pr79439-2.c: Likewise. * gcc.target/powerpc/pr79439-3.c: Likewise. * gcc.target/powerpc/pr83629.c: Likewise. * gcc.target/powerpc/pr84112.c: Likewise. --- .../gcc.target/powerpc/compress-float-ppc-pic.c | 1 + gcc/testsuite/gcc.target/powerpc/ppc-eabi.c | 2 ++ gcc/testsuite/gcc.target/powerpc/pr26350.c | 1 + gcc/testsuite/gcc.target/powerpc/pr67789.c | 1 + gcc/testsuite/gcc.target/powerpc/pr79439-1.c | 1 + gcc/testsuite/gcc.target/powerpc/pr79439-2.c | 1 + gcc/testsuite/gcc.target/powerpc/pr79439-3.c | 1 + gcc/testsuite/gcc.target/powerpc/pr83629.c | 1 + gcc/testsuite/gcc.target/powerpc/pr84112.c | 1 + 9 files changed, 10 insertions(+) diff --git a/gcc/testsuite/gcc.target/powerpc/compress-float-ppc-pic.c b/gcc/testsuite/gcc.target/powerpc/compress-float-ppc-pic.c index 6be1753ec710b..8961be51d2f2d 100644 --- a/gcc/testsuite/gcc.target/powerpc/compress-float-ppc-pic.c +++ b/gcc/testsuite/gcc.target/powerpc/compress-float-ppc-pic.c @@ -1,5 +1,6 @@ /* { dg-do compile { target powerpc_fprs } } */ /* { dg-options "-O2 -fpic -mdejagnu-cpu=power5" } */ +/* { dg-require-effective-target fpic } */ double foo (double x) { return x + 1.75; diff --git a/gcc/testsuite/gcc.target/powerpc/ppc-eabi.c b/gcc/testsuite/gcc.target/powerpc/ppc-eabi.c index cd15586c29e1a..8718430fafa8f 100644 --- a/gcc/testsuite/gcc.target/powerpc/ppc-eabi.c +++ b/gcc/testsuite/gcc.target/powerpc/ppc-eabi.c @@ -2,4 +2,6 @@ /* { dg-do compile } */ /* { dg-require-effective-target powerpc_eabi_ok } */ /* { dg-options "-meabi -mrelocatable" } */ +/* { dg-require-effective-target fpic } */ + char *s = "boo"; diff --git a/gcc/testsuite/gcc.target/powerpc/pr26350.c b/gcc/testsuite/gcc.target/powerpc/pr26350.c index ee081602e2f3b..76b0c0f664726 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr26350.c +++ b/gcc/testsuite/gcc.target/powerpc/pr26350.c @@ -1,5 +1,6 @@ /* { dg-do compile { target { powerpc*-*-darwin* powerpc*-*-aix* rs6000-*-* powerpc*-*-linux* } } } */ /* { dg-options "-O2 -mlong-double-128 -fpic" } */ +/* { dg-require-effective-target fpic } */ typedef int int32_t __attribute__ ((__mode__ (__SI__))); typedef unsigned char uint8_t; diff --git a/gcc/testsuite/gcc.target/powerpc/pr67789.c b/gcc/testsuite/gcc.target/powerpc/pr67789.c index 05d01ef20d777..ea77ec979cd5a 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr67789.c +++ b/gcc/testsuite/gcc.target/powerpc/pr67789.c @@ -1,6 +1,7 @@ /* { dg-do assemble } */ /* { dg-require-effective-target fpic } */ /* { dg-options "-O2 -msecure-plt -fPIC" } */ +/* { dg-require-effective-target fpic } */ /* { dg-skip-if "" { powerpc*-*-darwin* powerpc-ibm-aix* } } */ #define FE_TONEAREST 0 diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439-1.c b/gcc/testsuite/gcc.target/powerpc/pr79439-1.c index 8eb08a4e76246..04f2f9645e7d3 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr79439-1.c +++ b/gcc/testsuite/gcc.target/powerpc/pr79439-1.c @@ -1,5 +1,6 @@ /* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */ /* { dg-options "-O2 -fpic -fno-reorder-blocks -fno-inline-functions -mno-pcrel" } */ +/* { dg-require-effective-target fpic } */ /* On the Linux 64-bit ABIs, we eliminate NOP in the 'rec' call even if -fpic is used. The recursive call should call the local alias. The diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439-2.c b/gcc/testsuite/gcc.target/powerpc/pr79439-2.c index 9ebcf2579abc0..ec142081ff309 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr79439-2.c +++ b/gcc/testsuite/gcc.target/powerpc/pr79439-2.c @@ -1,5 +1,6 @@ /* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */ /* { dg-options "-O2 -fpic -fno-reorder-blocks -mno-pcrel" } */ +/* { dg-require-effective-target fpic } */ /* On the Linux 64-bit ABIs, we should not eliminate NOP in the 'rec' call if -fpic is used because rec can be interposed at link time (since it has an diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439-3.c b/gcc/testsuite/gcc.target/powerpc/pr79439-3.c index 762ca44b17772..0cc80f4af4274 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr79439-3.c +++ b/gcc/testsuite/gcc.target/powerpc/pr79439-3.c @@ -1,5 +1,6 @@ /* { dg-do compile { target { powerpc-*-linux* && ilp32 } } } */ /* { dg-options "-O2 -fpic -fno-reorder-blocks" } */ +/* { dg-require-effective-target fpic } */ /* Analog of pr79439-1.c for 32-bit Linux. */ diff --git a/gcc/testsuite/gcc.target/powerpc/pr83629.c b/gcc/testsuite/gcc.target/powerpc/pr83629.c index 976b564e927d7..8900010fb1d0a 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr83629.c +++ b/gcc/testsuite/gcc.target/powerpc/pr83629.c @@ -1,6 +1,7 @@ /* { dg-require-effective-target ilp32 } */ /* { dg-require-effective-target fpic } */ /* { dg-options "-O2 -fPIC -frename-registers --param=sched-autopref-queue-depth=0 -mdejagnu-cpu=603" } */ +/* { dg-require-effective-target fpic } */ extern void bar (void *); diff --git a/gcc/testsuite/gcc.target/powerpc/pr84112.c b/gcc/testsuite/gcc.target/powerpc/pr84112.c index 8fbafa1b1ca59..82a7d2a60f055 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr84112.c +++ b/gcc/testsuite/gcc.target/powerpc/pr84112.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ /* { dg-require-effective-target fpic } */ /* { dg-options "-mdejagnu-cpu=power8 -O3 -fstack-protector-strong -fpic" } */ +/* { dg-require-effective-target fpic } */ char *b; int c, d, e, f; -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer Vim, Vi, Voltei pro Emacs -- GNUlius Caesar