On targets where -fpic/-fPIC produce an error, we currently fail a large
number of LTO testcases. These should be using the appropriate
dg-require-effective-target so that they don't get run. Ok?
Bernd
* g++.dg/lto/20091002-1_0.C: Use "dg-require-effective-target fpic".
* g++.dg/lto/20091002-2_0.C: Likewise.
* g++.dg/lto/20091004-1_0.C: Likewise.
* g++.dg/lto/20091002-3_0.C: Likewise.
* g++.dg/lto/20091004-2_0.C: Likewise.
* g++.dg/lto/20081123_0.C: Likewise.
* g++.dg/lto/20090313_0.C: Likewise.
* g++.dg/lto/20081109-1_0.C: Likewise.
* g++.dg/lto/20081219_0.C: Likewise.
* g++.dg/lto/20081204-1_0.C: Likewise.
* g++.dg/lto/20090302_0.C: Likewise.
* g++.dg/lto/20081119-1_0.C: Likewise.
* g++.dg/lto/20081118_0.C: Likewise.
* gcc.dg/lto/20091020-2_0.c: Likewise.
* gcc.dg/lto/20090210_0.c: Likewise.
* gcc.dg/lto/20081204-1_0.c: Likewise.
* gcc.dg/lto/20081224_0.c: Likewise.
* gcc.dg/lto/20090219_0.c: Likewise.
* gcc.dg/lto/20091014-1_0.c: Likewise.
* gcc.dg/lto/20091016-1_0.c: Likewise.
* gcc.dg/lto/20090206-2_0.c: Likewise.
* gcc.dg/lto/20090116_0.c: Likewise.
* gcc.dg/lto/20091013-1_0.c: Likewise.
* gcc.dg/lto/20091015-1_0.c: Likewise.
* gcc.dg/lto/20090126-2_0.c: Likewise.
Index: gcc/testsuite/g++.dg/lto/20091002-1_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20091002-1_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20091002-1_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -flto}} }
// { dg-extra-ld-options "-fPIC -r -nostdlib" }
Index: gcc/testsuite/g++.dg/lto/20091002-2_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20091002-2_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20091002-2_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC}} }
// { dg-extra-ld-options "-fPIC -r -nostdlib" }
Index: gcc/testsuite/g++.dg/lto/20091002-3_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20091002-3_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20091002-3_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC}} }
// { dg-extra-ld-options "-fPIC -r -nostdlib" }
Index: gcc/testsuite/g++.dg/lto/20091004-1_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20091004-1_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20091004-1_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -O -flto}} }
typedef double Real;
Index: gcc/testsuite/g++.dg/lto/20091004-2_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20091004-2_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20091004-2_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -O -flto}} }
typedef double Real;
Index: gcc/testsuite/g++.dg/lto/20081123_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081123_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081123_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-flto -flto-partition=1to1 -r -nostdlib -fPIC}} }
int
Index: gcc/testsuite/g++.dg/lto/20090313_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20090313_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20090313_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-flto -flto-partition=1to1 -fPIC}} }
// { dg-extra-ld-options "-flto -flto-partition=1to1 -r -nostdlib" }
Index: gcc/testsuite/g++.dg/lto/20081109-1_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081109-1_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081109-1_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -flto -flto-partition=1to1}} }
// { dg-extra-ld-options "-fPIC -flto -flto-partition=1to1 -r -nostdlib
-fno-exceptions" }
void func(); class Foo { };
Index: gcc/testsuite/g++.dg/lto/20081219_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081219_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081219_0.C
@@ -1,4 +1,5 @@
// { dg-lto-do link }
+// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -flto -flto-partition=1to1 -O2}} }
// { dg-extra-ld-options "-O2 -fPIC -flto -flto-partition=1to1 -r -nostdlib" }
Index: gcc/testsuite/g++.dg/lto/20081204-1_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081204-1_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081204-1_0.C
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-flto -flto-partition=1to1 -fPIC -r -nostdlib}} } */
/* Tests for the absence during linking of:
Index: gcc/testsuite/g++.dg/lto/20090302_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20090302_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20090302_0.C
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -flto -flto-partition=1to1 -r -nostdlib}} } */
struct Foo {
bool Mumble();
Index: gcc/testsuite/g++.dg/lto/20081119-1_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081119-1_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081119-1_0.C
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -flto -flto-partition=1to1 -r -nostdlib}} } */
#include "20081119-1.h"
Index: gcc/testsuite/g++.dg/lto/20081118_0.C
===================================================================
--- gcc/testsuite/g++.dg/lto/20081118_0.C.orig
+++ gcc/testsuite/g++.dg/lto/20081118_0.C
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -flto -flto-partition=1to1 -r -nostdlib}} } */
/* We used to ICE because of dangling pointers. */
Index: gcc/testsuite/gcc.dg/lto/20091014-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091014-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091014-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -flto}} } */
/* Empty file. See PR41173. */
Index: gcc/testsuite/gcc.dg/lto/20091016-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091016-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091016-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -O2 -flto}} } */
typedef struct VEC_constructor_elt_gc { } VEC_constructor_elt_gc;
Index: gcc/testsuite/gcc.dg/lto/20090206-2_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20090206-2_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20090206-2_0.c
@@ -1,5 +1,6 @@
/* { dg-lto-do link } */
/* { dg-skip-if "" { ! { i?86-*-linux* x86_64-*-linux* } } { "*" } { "" } } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-flto -flto-partition=1to1 -fPIC}} } */
/* { dg-suppress-ld-options {-fPIC} } */
Index: gcc/testsuite/gcc.dg/lto/20090116_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20090116_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20090116_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-O1 -flto -flto-partition=1to1 -fPIC}} } */
/* { dg-extra-ld-options {-r -nostdlib -O0} } */
Index: gcc/testsuite/gcc.dg/lto/20091013-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091013-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091013-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -flto} {-fPIC -r -nostdlib -O2
-flto}} } */
void * HeapAlloc(void*,unsigned int,unsigned long);
Index: gcc/testsuite/gcc.dg/lto/20091015-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091015-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091015-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -O2 -flto} {-fPIC -r -nostdlib -O2
-flto -flto-partition=1to1}} } */
#include "20091015-1_b.h"
Index: gcc/testsuite/gcc.dg/lto/20090126-2_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20090126-2_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20090126-2_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -O2 -flto -flto-partition=1to1}} } */
/* { dg-extra-ld-options {-fno-PIC -r -nostdlib -O2 -flto
-flto-partition=1to1} } */
Index: gcc/testsuite/gcc.dg/lto/20091020-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091020-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091020-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -flto}} } */
typedef struct {
Index: gcc/testsuite/gcc.dg/lto/20091020-2_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20091020-2_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20091020-2_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-fPIC -r -nostdlib -flto}} } */
typedef struct {
Index: gcc/testsuite/gcc.dg/lto/20090210_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20090210_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20090210_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do run } */
+/* { dg-require-effective-target fpic } */
/* { dg-suppress-ld-options {-fPIC} } */
/* { dg-require-effective-target tls } */
/* { dg-extra-ld-options "-pthread" { target *-*-solaris2.[89] } } */
Index: gcc/testsuite/gcc.dg/lto/20081204-1_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20081204-1_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20081204-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-flto -flto-partition=1to1 -fPIC -r -nostdlib}} } */
/* Tests for the absence during linking of:
Index: gcc/testsuite/gcc.dg/lto/20081224_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20081224_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20081224_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-flto -flto-partition=1to1 -r -nostdlib -fPIC}} } */
#include "20081224_0.h"
Index: gcc/testsuite/gcc.dg/lto/20090219_0.c
===================================================================
--- gcc/testsuite/gcc.dg/lto/20090219_0.c.orig
+++ gcc/testsuite/gcc.dg/lto/20090219_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-require-effective-target fpic } */
/* { dg-lto-options {{-O3 -flto -flto-partition=1to1 -fPIC -r -nostdlib}} } */
struct Foo { int f1, f2, f3, f4, f5; };