diff --git a/ld/ChangeLog b/ld/ChangeLog index 0150f6185d6..7141182900b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,14 @@ +2020-11-17 Alan Modra + + PR 26882 + * testsuite/ld-powerpc/dotsym3.d: Add "-z notext" to ld options. + * testsuite/ld-powerpc/dotsym4.d: Likewise. + * testsuite/ld-powerpc/ppc476-shared.d: Likewise. + * testsuite/ld-powerpc/ppc476-shared2.d: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Likewise for various tests. + * testsuite/ld-undefined/weak-fundef.s: Add BLPLT variant. + * testsuite/ld-undefined/weak-undef.exp: Define BLPLT for ppc32. + 2020-11-16 Nick Clifton * po/es.po: Updated Spanish translation. diff --git a/ld/testsuite/ld-powerpc/dotsym3.d b/ld/testsuite/ld-powerpc/dotsym3.d index fac2f8ec732..215a9c2a6c1 100644 --- a/ld/testsuite/ld-powerpc/dotsym3.d +++ b/ld/testsuite/ld-powerpc/dotsym3.d @@ -1,7 +1,7 @@ #source: nodotsym.s #source: dotsymref.s #as: -a64 -#ld: -melf64ppc -Ttext=0x1000 -shared +#ld: -melf64ppc -Ttext=0x1000 -shared -z notext #objdump: -dR .*: file format .* diff --git a/ld/testsuite/ld-powerpc/dotsym4.d b/ld/testsuite/ld-powerpc/dotsym4.d index fdd92f3da76..d774e83bcf6 100644 --- a/ld/testsuite/ld-powerpc/dotsym4.d +++ b/ld/testsuite/ld-powerpc/dotsym4.d @@ -1,7 +1,7 @@ #source: dotsymref.s #source: nodotsym.s #as: -a64 -#ld: -melf64ppc -Ttext=0x1000 -shared +#ld: -melf64ppc -Ttext=0x1000 -shared -z notext #objdump: -dR .*: file format .* diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp index 74af28d7421..2cbefb841c2 100644 --- a/ld/testsuite/ld-powerpc/powerpc.exp +++ b/ld/testsuite/ld-powerpc/powerpc.exp @@ -99,7 +99,7 @@ proc supports_ppc64 { } { # readelf: Apply readelf options on result. Compare with regex (last arg). set ppcelftests { - {"Reloc section order" "-melf32ppc -shared -z nocombreloc" "" "-a32" {reloc.s} + {"Reloc section order" "-melf32ppc -shared -z nocombreloc -z notext" "" "-a32" {reloc.s} {{objdump -hw reloc.d}} "reloc.so"} {"APUinfo section processing" "-melf32ppc" "" "-a32 -me500" {apuinfo1.s apuinfo-nul.s apuinfo2.s} @@ -134,7 +134,7 @@ set ppcelftests { {{readelf -WSsrl tlsexe32no.r} {objdump -dr tlsexe32no.d} {objdump -sj.got tlsexe32no.g} {objdump -sj.tdata tlsexe32.t}} "tlsexe32no"} - {"TLS32 shared" "-shared -melf32ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls32.o" "" "" {} + {"TLS32 shared" "-shared -melf32ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv -z notext tmpdir/tls32.o" "" "" {} {{readelf -WSsrl tlsso32.r} {objdump -dr tlsso32.d} {objdump -sj.got tlsso32.g} {objdump -sj.tdata tlsso32.t}} "tls32.so"} @@ -202,7 +202,7 @@ set ppc64elftests { {{readelf -WSsrl tlsexeno.r} {objdump -dr tlsexeno.d} {objdump -sj.got tlsexeno.g} {objdump -sj.tdata tlsexe.t}} "tlsexeno"} - {"TLS shared" "-shared -melf64ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls.o" "" "" {} + {"TLS shared" "-shared -melf64ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv -z notext tmpdir/tls.o" "" "" {} {{readelf -WSsrl tlsso.r} {objdump -dr tlsso.d} {objdump -sj.got tlsso.g} {objdump -sj.tdata tlsso.t}} "tls.so"} @@ -229,7 +229,7 @@ set ppc64elftests { {{readelf -WSsrl tlsexetoc.r} {objdump -dr tlsexetocno.d} {objdump -sj.got tlsexetocno.g} {objdump -sj.tdata tlsexetoc.t}} "tlsexetocno"} - {"TLSTOC shared" "-shared -melf64ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tlstoc.o" "" "" {} + {"TLSTOC shared" "-shared -melf64ppc --no-plt-align --no-ld-generated-unwind-info --hash-style=sysv -z notext tmpdir/tlstoc.o" "" "" {} {{readelf -WSsrl tlstocso.r} {objdump -dr tlstocso.d} {objdump -sj.got tlstocso.g} {objdump -sj.tdata tlstocso.t}} "tlstoc.so"} diff --git a/ld/testsuite/ld-powerpc/ppc476-shared.d b/ld/testsuite/ld-powerpc/ppc476-shared.d index 7953cb44e25..3b2cc8a155c 100644 --- a/ld/testsuite/ld-powerpc/ppc476-shared.d +++ b/ld/testsuite/ld-powerpc/ppc476-shared.d @@ -1,6 +1,6 @@ #source: ppc476-shared.s #as: -a32 -#ld: -melf32ppc -q -shared -z common-page-size=0x10000 --ppc476-workaround -T ppc476-shared.lnk +#ld: -melf32ppc -q -shared -z common-page-size=0x10000 -z notext --ppc476-workaround -T ppc476-shared.lnk #objdump: -dr #target: powerpc*-*-* diff --git a/ld/testsuite/ld-powerpc/ppc476-shared2.d b/ld/testsuite/ld-powerpc/ppc476-shared2.d index 26a5c41f988..48917fd4d92 100644 --- a/ld/testsuite/ld-powerpc/ppc476-shared2.d +++ b/ld/testsuite/ld-powerpc/ppc476-shared2.d @@ -1,6 +1,6 @@ #source: ppc476-shared.s #as: -a32 -#ld: -melf32ppc -shared -z common-page-size=0x10000 --ppc476-workaround -T ppc476-shared.lnk +#ld: -melf32ppc -shared -z common-page-size=0x10000 -z notext --ppc476-workaround -T ppc476-shared.lnk #objdump: -R #target: powerpc*-*-* diff --git a/ld/testsuite/ld-undefined/weak-fundef.s b/ld/testsuite/ld-undefined/weak-fundef.s index 2c20f799417..de8f641b6c2 100644 --- a/ld/testsuite/ld-undefined/weak-fundef.s +++ b/ld/testsuite/ld-undefined/weak-fundef.s @@ -5,6 +5,9 @@ bl undef_weak_fun nop .endif + .ifdef BLPLT + bl undef_weak_fun@plt + .endif .ifdef CALLPLT call undef_weak_fun@plt .endif diff --git a/ld/testsuite/ld-undefined/weak-undef.exp b/ld/testsuite/ld-undefined/weak-undef.exp index 50c8e1483e3..14b6774c5bc 100644 --- a/ld/testsuite/ld-undefined/weak-undef.exp +++ b/ld/testsuite/ld-undefined/weak-undef.exp @@ -105,7 +105,8 @@ set asflags "" switch -glob $target_triplet { aarch64* - arm* - - powerpc* { set asflags "--defsym BL=1" } + powerpc64* { set asflags "--defsym BL=1" } + powerpc* { set asflags "--defsym BLPLT=1" } hppa* { set asflags "--defsym HPPA=1" } i\[3-7\]86* - x86_64* { set asflags "--defsym CALLPLT=1" }