--- binutils.orig/ld/testsuite/ld-elf/shared.exp 2019-04-23 13:07:23.111291978 +0100 +++ binutils-2.30/ld/testsuite/ld-elf/shared.exp 2019-04-23 14:51:29.083611504 +0100 @@ -1143,5 +1143,5 @@ proc mix_pic_and_non_pic {xfails cflags } } -mix_pic_and_non_pic [list "arm*-*-*" "aarch64*-*-*"] "" "" "pr19719" +mix_pic_and_non_pic [list "arm*-*-*" "aarch64*-*-*" "s390x-*-*"] "" "" "pr19719" mix_pic_and_non_pic [] "-fPIE" "-pie" "pr19719pie" --- binutils.orig/ld/testsuite/ld-plugin/plugin.exp 2019-04-23 13:07:23.039292481 +0100 +++ binutils-2.30/ld/testsuite/ld-plugin/plugin.exp 2019-04-23 16:21:20.757147989 +0100 @@ -283,17 +283,21 @@ if { !$can_compile || $failed_compile } foreach testitem $plugin_tests { $failure_kind [lindex $testitem 0] } - if { [is_elf_format] } { - foreach testitem $plugin_extra_elf_tests { - $failure_kind [lindex $testitem 0] + + if { ![istarget "ppc64*-*-*"] && ![istarget "powerpc*-*-*"] } { + if { [is_elf_format] } { + foreach testitem $plugin_extra_elf_tests { + $failure_kind [lindex $testitem 0] + } } } + return } run_ld_link_tests $plugin_tests -if { ! [istarget "ppc*-*-*"] } { +if { ! [istarget "ppc*-*-*"] && ![istarget "powerpc*-*-*"] } { if { [is_elf_format] \ && [ld_compile "$CC $CFLAGS" $srcdir/$subdir/func1p.c tmpdir/func1p.o] \ && [ld_compile "$CC $CFLAGS" $srcdir/$subdir/func2i.c tmpdir/func2i.o] \ --- binutils.orig/ld/testsuite/ld-elfvers/vers.exp 2019-04-23 13:07:23.032292531 +0100 +++ binutils-2.30/ld/testsuite/ld-elfvers/vers.exp 2019-04-23 16:21:36.469038125 +0100 @@ -938,7 +938,7 @@ if [string match "yes" $pic] then { build_exec "vers23" vers23.c vers23 "-Wl,--no-as-needed tmpdir/vers23a.so tmpdir/vers23b.o tmpdir/vers23b.so" "" vers23.ver vers23.dsym "" } -if {! [istarget ppc64*-*-*] } { +if {! [istarget ppc64*-*-*] && ![istarget "powerpc*-*-*"] } { # Test .symver x,x@VERS.0 set as_pic_flags "" if [istarget sparc*-*-*] { --- binutils.orig/ld/testsuite/ld-ifunc/ifunc.exp 2019-04-23 13:07:23.032292531 +0100 +++ binutils-2.30/ld/testsuite/ld-ifunc/ifunc.exp 2019-04-23 16:44:54.811226619 +0100 @@ -284,14 +284,12 @@ if {! [check_osabi tmpdir/static_nonifun # The linked ifunc using executables and the shared library containing # ifunc should contain an IFUNC symbol. The non-ifunc using executable # should not. -if { ![istarget "ppc*-*-*"] } { +if { ![istarget "ppc*-*-*"] && ![istarget "powerpc*-*-*"] } { if {[contains_ifunc_symbol tmpdir/libshared_ifunc.so] != 1} { fail "Shared libraries containing ifunc does not contain an IFUNC symbol" set fails [expr $fails + 1] } -} -if { ![istarget "ppc*-*-*"] } { if {[contains_ifunc_symbol tmpdir/local_prog] != 1} { fail "Local ifunc-using executable does not contain an IFUNC symbol" set fails [expr $fails + 1] @@ -301,6 +299,7 @@ if {[contains_ifunc_symbol tmpdir/static set fails [expr $fails + 1] } } + if {[contains_ifunc_symbol tmpdir/dynamic_prog] != 0} { fail "Dynamic ifunc-using executable contains an IFUNC symbol" set fails [expr $fails + 1] @@ -467,6 +466,9 @@ run_ld_link_exec_tests [list \ "pr16467.out" \ "" \ ] \ +] + +run_ld_link_exec_tests [list \ [list \ "Run pr16467 (-z now)" \ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr16467c.o tmpdir/libpr16467bn.so tmpdir/libpr16467an.so" \ @@ -476,6 +478,9 @@ run_ld_link_exec_tests [list \ "pr16467.out" \ "" \ ] \ +] aarch64-*-* + +run_ld_link_exec_tests [list \ [list \ "Run ifunc-main" \ "-Wl,--no-as-needed tmpdir/libifunc-lib.so" \ @@ -492,7 +497,10 @@ run_ld_link_exec_tests [list \ "ifunc-main" \ "ifunc-main.out" \ "-fpic" \ - ] \ + ] \ +] + +run_ld_link_exec_tests [list \ [list \ "Run ifunc-main (-z now)" \ "-Wl,-z,now -Wl,--no-as-needed tmpdir/libifunc-libn.so" \ @@ -500,7 +508,7 @@ run_ld_link_exec_tests [list \ { ifunc-main.c } \ "ifunc-mainn" \ "ifunc-main.out" \ - ] \ + ] \ [list \ "Run ifunc-main with PIE (-z now)" \ "-pie -Wl,-z,now -Wl,--no-as-needed tmpdir/libifunc-libn.so" \ @@ -510,7 +518,7 @@ run_ld_link_exec_tests [list \ "ifunc-main.out" \ "-fpie" \ ] \ -] +] aarch64-*-* # Run-time tests which require working ifunc attribute support. if { ![check_ifunc_attribute_available] } { @@ -593,6 +601,9 @@ run_ld_link_exec_tests [list \ "pr18808" \ "pr18808.out" \ ] \ +] + +run_ld_link_exec_tests [list \ [list \ "Run pr18808 (-z now)" \ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr18808a.o tmpdir/libpr18808n.so" \ @@ -609,6 +620,9 @@ run_ld_link_exec_tests [list \ "pr18841b" \ "pr18841.out" \ ] \ +] aarch64-*-* + +run_ld_link_exec_tests [list \ [list \ "Run pr18841 with libpr18841c.so" \ "-Wl,--as-needed tmpdir/pr18841a.o tmpdir/libpr18841c.so" \ @@ -617,6 +631,9 @@ run_ld_link_exec_tests [list \ "pr18841c" \ "pr18841.out" \ ] \ +] + +run_ld_link_exec_tests [list \ [list \ "Run pr18841 with libpr18841bn.so (-z now)" \ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr18841a.o tmpdir/libpr18841bn.so" \ @@ -625,6 +642,9 @@ run_ld_link_exec_tests [list \ "pr18841bn" \ "pr18841.out" \ ] \ +] aarch64-*-* + +run_ld_link_exec_tests [list \ [list \ "Run pr18841 with libpr18841cn.so (-z now)" \ "-Wl,-z,now -Wl,--as-needed tmpdir/pr18841a.o tmpdir/libpr18841cn.so" \ --- binutils.orig/ld/testsuite/ld-i386/i386.exp 2019-04-23 13:07:23.026292573 +0100 +++ binutils-2.30/ld/testsuite/ld-i386/i386.exp 2019-04-23 17:15:41.694274606 +0100 @@ -579,24 +579,6 @@ if { [isnative] "libplt-main4.a" \ ] \ [list \ - "Build plt-main" \ - "tmpdir/plt-main1.o tmpdir/plt-main2.o tmpdir/plt-main3.o \ - tmpdir/plt-main4.o tmpdir/libplt-lib.so" \ - "" \ - { plt-main5.c } \ - {{readelf {-Wr} plt-main.rd}} \ - "plt-main" \ - ] \ - [list \ - "Build plt-main with PIE" \ - "tmpdir/plt-main1.o tmpdir/plt-main2.o tmpdir/plt-main3.o \ - tmpdir/plt-main4.o tmpdir/libplt-lib.so -pie" \ - "-fPIC" \ - { plt-main5.c } \ - {{readelf {-Wr} plt-main.rd}} \ - "plt-main" \ - ] \ - [list \ "Build copyreloc-lib.so" \ "-shared" \ "-fPIC" \ @@ -1202,24 +1184,6 @@ if { [isnative] "" \ "pr21168-ibt.so" \ ] \ - [list \ - "Build ifunc-1a with -z ibtplt" \ - "-Wl,-z,ibtplt $NOPIE_LDFLAGS tmpdir/ifunc-1a.o \ - tmpdir/ifunc-1b.o tmpdir/ifunc-1c.o tmpdir/ifunc-1d.o" \ - "" \ - { dummy.c } \ - {{objdump {-dw} plt-main-ibt.dd}} \ - "ifunc-1a-ibt" \ - ] \ - [list \ - "Build ifunc-1a with PIE -z ibtplt" \ - "-Wl,-z,ibtplt -pie tmpdir/ifunc-1a.o \ - tmpdir/ifunc-1b.o tmpdir/ifunc-1c.o tmpdir/ifunc-1d.o" \ - "" \ - { dummy.c } \ - {{objdump {-dw} plt-pie-ibt.dd}} \ - "ifunc-1a-pie-ibt" \ - ] \ ] run_ld_link_exec_tests [list \