summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-elfvsb
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2011-02-09 08:18:54 +0000
committerAlan Modra <amodra@bigpond.net.au>2011-02-09 08:18:54 +0000
commitd17b1419029408e49ce7cfd29c3e6a63cb6d9d8e (patch)
tree656291ed3fbbf7c3a6db3cc890e2f3163efff4ca /ld/testsuite/ld-elfvsb
parent8f19c403ffacbf5b0581f1006781e8f28e8aa6e6 (diff)
downloadbinutils-redhat-d17b1419029408e49ce7cfd29c3e6a63cb6d9d8e.tar.gz
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail. * ld-srec/srec.exp: Don't edit toc on powerpc64.
Diffstat (limited to 'ld/testsuite/ld-elfvsb')
-rw-r--r--ld/testsuite/ld-elfvsb/elfvsb.exp15
1 files changed, 13 insertions, 2 deletions
diff --git a/ld/testsuite/ld-elfvsb/elfvsb.exp b/ld/testsuite/ld-elfvsb/elfvsb.exp
index 9786f78e45..d288774ada 100644
--- a/ld/testsuite/ld-elfvsb/elfvsb.exp
+++ b/ld/testsuite/ld-elfvsb/elfvsb.exp
@@ -249,6 +249,14 @@ proc visibility_run {visibility} {
set VSBCFLAG ""
}}}}}}}}}
+ if { [istarget powerpc*-*-linux*] } {
+ # Testing non-PIC libraries is a waste of effort on any target.
+ # If you don't pass -fpic or -fPIC to gcc, gcc will assume quite
+ # reasonably that you are not compiling for a shared library.
+ # It can then make optimisations that result in shared library
+ # functions and variables not being overridable. Newer versions
+ # of gcc are more likely to do this.
+ } else {
# Compile the main program.
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o] {
unresolved "visibility ($visibility) (non PIC)"
@@ -369,8 +377,11 @@ proc visibility_run {visibility} {
visibility_test $visibility vp "visibility ($visibility)" mainnp.o sh1p.o sh2p.o elfvsb
} }
}
- }
+ }}
+ if { [istarget powerpc*-*-linux*] } {
+ # Don't bother.
+ } else {
# Now do the same tests again, but this time compile main.c PIC.
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG -DSHARED $picflag" $srcdir/$subdir/main.c $tmpdir/mainp.o] {
unresolved "visibility ($visibility) (PIC main, non PIC so)"
@@ -433,7 +444,7 @@ proc visibility_run {visibility} {
} else {
unresolved "visibility ($visibility) (PIC main)"
}
- }
+ }}
}
if [istarget mips*-*-*] {