Support different ld --hash-style in the ld testsuite
authorAlan Modra <amodra@gmail.com>
Sun, 6 Aug 2017 12:34:25 +0000 (22:04 +0930)
committerAlan Modra <amodra@gmail.com>
Mon, 7 Aug 2017 12:40:51 +0000 (22:10 +0930)
When ld is running with something other than --hash-style=sysv by
default, numerous tests need tweaking.  Most of the changes just add
--hash-style=sysv.  I didn't want to make --hash-style=sysv global as
that means --hash-style=gnu isn't well tested.

* testsuite/ld-alpha/alpha.exp: Add --hash-style=sysv to various
test's ld options.
* testsuite/ld-arm/arm-elf.exp: Likewise.
* testsuite/ld-elf/elf.exp: Likewise.
* testsuite/ld-elf/readelf.exp: Likewise.
* testsuite/ld-elfvsb/elfvsb.exp: Likewise.
* testsuite/ld-i386/i386.exp: Likewise.
* testsuite/ld-ia64/ia64.exp: Likewise.
* testsuite/ld-m68k/m68k.exp: Likewise.
* testsuite/ld-metag/metag.exp: Likewise.
* testsuite/ld-powerpc/powerpc.exp: Likewise.
* testsuite/ld-s390/s390.exp: Likewise.
* testsuite/ld-sh/sh-vxworks.exp: Likewise.
* testsuite/ld-shared/shared.exp: Likewise.
* testsuite/ld-sparc/sparc.exp: Likewise.
* testsuite/ld-tic6x/tic6x.exp: Likewise.
* testsuite/ld-vax-elf/vax-elf.exp: Likewise.
* testsuite/ld-x86-64/mpx.exp: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-xtensa/xtensa.exp: Likewise.

* testsuite/ld-elf/comm-data2.ld: Add .gnu.hash output section.
* testsuite/ld-elf/pr20828-v.ld: Likewise.
* testsuite/ld-elf/pr20828.ld: Likewise.
* testsuite/ld-elf/pr21233.ld: Likewise.
* testsuite/ld-elf/pr21384.ld: Likewise.
* testsuite/ld-elf/provide-hidden-1.ld: Likewise.
* testsuite/ld-elf/provide-hidden-2.ld: Likewise.
* testsuite/ld-elf/provide-hidden-s.ld: Likewise.
* testsuite/ld-scripts/cross1.t: Likewise.

* testsuite/ld-elf/stab.d: Adjust allowed section indices.

* testsuite/ld-i386/pie1.d: Don't match addresses.
* testsuite/ld-i386/plt-pic2.dd: Likewise.
* testsuite/ld-i386/pr19636-1d.d: Likewise.
* testsuite/ld-i386/pr19636-2c.d: Likewise.
* testsuite/ld-powerpc/elfv2so.d: Likewise.
* testsuite/ld-powerpc/tlsopt5.d: Likewise.
* testsuite/ld-powerpc/tlsopt5.wf: Likewise.
* testsuite/ld-powerpc/tlsopt5_32.d: Likewise.

* testsuite/ld-i386/pr19636-2b.d: Don't match _start.

* testsuite/ld-powerpc/ambiguousv1.d: Relax symbol count, index
and address match.
* testsuite/ld-powerpc/ambiguousv1b.d: Likewise.
* testsuite/ld-powerpc/ambiguousv2.d: Likewise.
* testsuite/ld-powerpc/ambiguousv2b.d: Likewise.

* testsuite/ld-aarch64/gc-plt-relocs.d: Run ld with --hash-style=sysv.
* testsuite/ld-aarch64/ifunc-1.d: Likewise.
* testsuite/ld-aarch64/ifunc-2.d: Likewise.
* testsuite/ld-aarch64/ifunc-21.d: Likewise.
* testsuite/ld-aarch64/relasz.d: Likewise.
* testsuite/ld-aarch64/tls-small-ld.d: Likewise.
* testsuite/ld-aarch64/tls-tiny-ld.d: Likewise.
* testsuite/ld-arc/tls_gd-01.d: Likewise.
* testsuite/ld-cris/libdso-10.d: Likewise.
* testsuite/ld-cris/libdso-2.d: Likewise.
* testsuite/ld-cris/pic-gc-72.d: Likewise.
* testsuite/ld-cris/pic-gc-73.d: Likewise.
* testsuite/ld-cris/tls-gd-1.d: Likewise.
* testsuite/ld-cris/tls-gd-1h.d: Likewise.
* testsuite/ld-cris/tls-gd-2.d: Likewise.
* testsuite/ld-cris/tls-gd-2h.d: Likewise.
* testsuite/ld-cris/tls-ie-10.d: Likewise.
* testsuite/ld-cris/tls-ie-11.d: Likewise.
* testsuite/ld-cris/tls-ie-8.d: Likewise.
* testsuite/ld-cris/tls-ie-9.d: Likewise.
* testsuite/ld-cris/tls-ld-4.d: Likewise.
* testsuite/ld-cris/tls-ld-5.d: Likewise.
* testsuite/ld-cris/tls-ld-6.d: Likewise.
* testsuite/ld-cris/tls-ld-7.d: Likewise.
* testsuite/ld-cris/tls-ldgd-14.d: Likewise.
* testsuite/ld-cris/tls-ldgd-15.d: Likewise.
* testsuite/ld-cris/tls-ldgdx-14.d: Likewise.
* testsuite/ld-cris/tls-ldgdx-15.d: Likewise.
* testsuite/ld-cris/tls-local-54.d: Likewise.
* testsuite/ld-cris/tls-local-60.d: Likewise.
* testsuite/ld-cris/tls-local-61.d: Likewise.
* testsuite/ld-cris/weakhiddso.d: Likewise.
* testsuite/ld-elf/linkinfo1a.d: Likewise.
* testsuite/ld-elf/linkinfo1b.d: Likewise.
* testsuite/ld-elf/pr19617a.d: Likewise.
* testsuite/ld-elfvsb/hidden2.d: Likewise.
* testsuite/ld-frv/fdpic-pie-6.d: Likewise.
* testsuite/ld-frv/fdpic-shared-2.d: Likewise.
* testsuite/ld-frv/fdpic-shared-5.d: Likewise.
* testsuite/ld-frv/fdpic-shared-6.d: Likewise.
* testsuite/ld-frv/fdpic-shared-8.d: Likewise.
* testsuite/ld-frv/fdpic-shared-local-2.d: Likewise.
* testsuite/ld-frv/fdpic-shared-local-8.d: Likewise.
* testsuite/ld-frv/tls-dynamic-2.d: Likewise.
* testsuite/ld-i386/ibt-plt-1.d: Likewise.
* testsuite/ld-i386/ibt-plt-2a.d: Likewise.
* testsuite/ld-i386/ibt-plt-2c.d: Likewise.
* testsuite/ld-i386/ibt-plt-3a.d: Likewise.
* testsuite/ld-i386/ibt-plt-3c.d: Likewise.
* testsuite/ld-i386/pr20830.d: Likewise.
* testsuite/ld-ia64/merge1.d: Likewise.
* testsuite/ld-ia64/merge2.d: Likewise.
* testsuite/ld-ia64/merge3.d: Likewise.
* testsuite/ld-ia64/merge4.d: Likewise.
* testsuite/ld-ia64/merge5.d: Likewise.
* testsuite/ld-ifunc/ifunc-1-local-x86.d: Likewise.
* testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
* testsuite/ld-ifunc/pr17154-i386-now.d: Likewise.
* testsuite/ld-ifunc/pr17154-i386.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64.d: Likewise.
* testsuite/ld-m68k/got-1.d: Likewise.
* testsuite/ld-m68k/got-multigot-12-13-14-34-35-ok.d: Likewise.
* testsuite/ld-m68k/got-multigot-14-ok.d: Likewise.
* testsuite/ld-m68k/got-multigot-15-er.d: Likewise.
* testsuite/ld-m68k/got-negative-12-13-14-34-ok.d: Likewise.
* testsuite/ld-m68k/got-negative-12-13-14-35-er.d: Likewise.
* testsuite/ld-m68k/got-negative-14-ok.d: Likewise.
* testsuite/ld-m68k/got-negative-15-er.d: Likewise.
* testsuite/ld-m68k/got-single-12-ok.d: Likewise.
* testsuite/ld-m68k/got-single-13-er.d: Likewise.
* testsuite/ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise.
* testsuite/ld-m68k/got-xgot-15-ok.d: Likewise.
* testsuite/ld-m68k/tls-gd-1.d: Likewise.
* testsuite/ld-m68k/tls-gd-2.d: Likewise.
* testsuite/ld-m68k/tls-gd-ie-1.d: Likewise.
* testsuite/ld-m68k/tls-ie-1.d: Likewise.
* testsuite/ld-m68k/tls-ld-1.d: Likewise.
* testsuite/ld-m68k/tls-ld-2.d: Likewise.
* testsuite/ld-sh/shared-2.d: Likewise.
* testsuite/ld-sh/tlsbin-2.d: Likewise.
* testsuite/ld-sh/tlspic-2.d: Likewise.
* testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-1.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-1.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2c.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3a.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3c.d: Likewise.
* testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise.
* testsuite/ld-x86-64/ilp32-4.d: Likewise.
* testsuite/ld-x86-64/load1c-nacl.d: Likewise.
* testsuite/ld-x86-64/load1c.d: Likewise.
* testsuite/ld-x86-64/load1d-nacl.d: Likewise.
* testsuite/ld-x86-64/load1d.d: Likewise.
* testsuite/ld-x86-64/pie3-nacl.d: Likewise.
* testsuite/ld-x86-64/pie3.d: Likewise.
* testsuite/ld-x86-64/pr14207.d: Likewise.
* testsuite/ld-x86-64/pr19162.d: Likewise.
* testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise.
* testsuite/ld-x86-64/pr19636-2d.d: Likewise.
* testsuite/ld-x86-64/pr20253-1d.d: Likewise.
* testsuite/ld-x86-64/pr20253-1f.d: Likewise.
* testsuite/ld-x86-64/pr20253-1j.d: Likewise.
* testsuite/ld-x86-64/pr20253-1l.d: Likewise.
* testsuite/ld-x86-64/pr20830a-now.d: Likewise.
* testsuite/ld-x86-64/pr20830a.d: Likewise.
* testsuite/ld-x86-64/pr20830b-now.d: Likewise.
* testsuite/ld-x86-64/pr20830b.d: Likewise.
* testsuite/ld-x86-64/pr21038a-now.d: Likewise.
* testsuite/ld-x86-64/pr21038a.d: Likewise.
* testsuite/ld-x86-64/pr21038b-now.d: Likewise.
* testsuite/ld-x86-64/pr21038b.d: Likewise.
* testsuite/ld-x86-64/pr21038c-now.d: Likewise.
* testsuite/ld-x86-64/pr21038c.d: Likewise.

175 files changed:
ld/ChangeLog
ld/testsuite/ld-aarch64/gc-plt-relocs.d
ld/testsuite/ld-aarch64/ifunc-1.d
ld/testsuite/ld-aarch64/ifunc-2.d
ld/testsuite/ld-aarch64/ifunc-21.d
ld/testsuite/ld-aarch64/relasz.d
ld/testsuite/ld-aarch64/tls-small-ld.d
ld/testsuite/ld-aarch64/tls-tiny-ld.d
ld/testsuite/ld-alpha/alpha.exp
ld/testsuite/ld-arc/tls_gd-01.d
ld/testsuite/ld-arm/arm-elf.exp
ld/testsuite/ld-cris/libdso-10.d
ld/testsuite/ld-cris/libdso-2.d
ld/testsuite/ld-cris/pic-gc-72.d
ld/testsuite/ld-cris/pic-gc-73.d
ld/testsuite/ld-cris/tls-gd-1.d
ld/testsuite/ld-cris/tls-gd-1h.d
ld/testsuite/ld-cris/tls-gd-2.d
ld/testsuite/ld-cris/tls-gd-2h.d
ld/testsuite/ld-cris/tls-ie-10.d
ld/testsuite/ld-cris/tls-ie-11.d
ld/testsuite/ld-cris/tls-ie-8.d
ld/testsuite/ld-cris/tls-ie-9.d
ld/testsuite/ld-cris/tls-ld-4.d
ld/testsuite/ld-cris/tls-ld-5.d
ld/testsuite/ld-cris/tls-ld-6.d
ld/testsuite/ld-cris/tls-ld-7.d
ld/testsuite/ld-cris/tls-ldgd-14.d
ld/testsuite/ld-cris/tls-ldgd-15.d
ld/testsuite/ld-cris/tls-ldgdx-14.d
ld/testsuite/ld-cris/tls-ldgdx-15.d
ld/testsuite/ld-cris/tls-local-54.d
ld/testsuite/ld-cris/tls-local-60.d
ld/testsuite/ld-cris/tls-local-61.d
ld/testsuite/ld-cris/weakhiddso.d
ld/testsuite/ld-elf/comm-data2.ld
ld/testsuite/ld-elf/elf.exp
ld/testsuite/ld-elf/linkinfo1a.d
ld/testsuite/ld-elf/linkinfo1b.d
ld/testsuite/ld-elf/pr19617a.d
ld/testsuite/ld-elf/pr20828-v.ld
ld/testsuite/ld-elf/pr20828.ld
ld/testsuite/ld-elf/pr21233.ld
ld/testsuite/ld-elf/pr21384.ld
ld/testsuite/ld-elf/provide-hidden-1.ld
ld/testsuite/ld-elf/provide-hidden-2.ld
ld/testsuite/ld-elf/provide-hidden-s.ld
ld/testsuite/ld-elf/readelf.exp
ld/testsuite/ld-elf/stab.d
ld/testsuite/ld-elfvsb/elfvsb.exp
ld/testsuite/ld-elfvsb/hidden2.d
ld/testsuite/ld-frv/fdpic-pie-6.d
ld/testsuite/ld-frv/fdpic-shared-2.d
ld/testsuite/ld-frv/fdpic-shared-5.d
ld/testsuite/ld-frv/fdpic-shared-6.d
ld/testsuite/ld-frv/fdpic-shared-8.d
ld/testsuite/ld-frv/fdpic-shared-local-2.d
ld/testsuite/ld-frv/fdpic-shared-local-8.d
ld/testsuite/ld-frv/tls-dynamic-2.d
ld/testsuite/ld-i386/i386.exp
ld/testsuite/ld-i386/ibt-plt-1.d
ld/testsuite/ld-i386/ibt-plt-2a.d
ld/testsuite/ld-i386/ibt-plt-2c.d
ld/testsuite/ld-i386/ibt-plt-3a.d
ld/testsuite/ld-i386/ibt-plt-3c.d
ld/testsuite/ld-i386/pie1.d
ld/testsuite/ld-i386/plt-pic2.dd
ld/testsuite/ld-i386/pr19636-1d.d
ld/testsuite/ld-i386/pr19636-2b.d
ld/testsuite/ld-i386/pr19636-2c.d
ld/testsuite/ld-i386/pr20830.d
ld/testsuite/ld-ia64/ia64.exp
ld/testsuite/ld-ia64/merge1.d
ld/testsuite/ld-ia64/merge2.d
ld/testsuite/ld-ia64/merge3.d
ld/testsuite/ld-ia64/merge4.d
ld/testsuite/ld-ia64/merge5.d
ld/testsuite/ld-ifunc/ifunc-1-local-x86.d
ld/testsuite/ld-ifunc/ifunc-1-x86.d
ld/testsuite/ld-ifunc/ifunc-2-i386-now.d
ld/testsuite/ld-ifunc/ifunc-2-local-i386-now.d
ld/testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d
ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d
ld/testsuite/ld-ifunc/ifunc-2-x86-64-now.d
ld/testsuite/ld-ifunc/ifunc-2-x86-64.d
ld/testsuite/ld-ifunc/ifunc-3a-x86.d
ld/testsuite/ld-ifunc/pr17154-i386-now.d
ld/testsuite/ld-ifunc/pr17154-i386.d
ld/testsuite/ld-ifunc/pr17154-x86-64-now.d
ld/testsuite/ld-ifunc/pr17154-x86-64.d
ld/testsuite/ld-m68k/got-1.d
ld/testsuite/ld-m68k/got-multigot-12-13-14-34-35-ok.d
ld/testsuite/ld-m68k/got-multigot-14-ok.d
ld/testsuite/ld-m68k/got-multigot-15-er.d
ld/testsuite/ld-m68k/got-negative-12-13-14-34-ok.d
ld/testsuite/ld-m68k/got-negative-12-13-14-35-er.d
ld/testsuite/ld-m68k/got-negative-14-ok.d
ld/testsuite/ld-m68k/got-negative-15-er.d
ld/testsuite/ld-m68k/got-single-12-ok.d
ld/testsuite/ld-m68k/got-single-13-er.d
ld/testsuite/ld-m68k/got-xgot-12-13-14-15-34-35-ok.d
ld/testsuite/ld-m68k/got-xgot-15-ok.d
ld/testsuite/ld-m68k/m68k.exp
ld/testsuite/ld-m68k/tls-gd-1.d
ld/testsuite/ld-m68k/tls-gd-2.d
ld/testsuite/ld-m68k/tls-gd-ie-1.d
ld/testsuite/ld-m68k/tls-ie-1.d
ld/testsuite/ld-m68k/tls-ld-1.d
ld/testsuite/ld-m68k/tls-ld-2.d
ld/testsuite/ld-metag/metag.exp
ld/testsuite/ld-powerpc/ambiguousv1.d
ld/testsuite/ld-powerpc/ambiguousv1b.d
ld/testsuite/ld-powerpc/ambiguousv2.d
ld/testsuite/ld-powerpc/ambiguousv2b.d
ld/testsuite/ld-powerpc/elfv2so.d
ld/testsuite/ld-powerpc/powerpc.exp
ld/testsuite/ld-powerpc/tlsopt5.d
ld/testsuite/ld-powerpc/tlsopt5.wf
ld/testsuite/ld-powerpc/tlsopt5_32.d
ld/testsuite/ld-s390/s390.exp
ld/testsuite/ld-scripts/cross1.t
ld/testsuite/ld-sh/sh-vxworks.exp
ld/testsuite/ld-sh/shared-2.d
ld/testsuite/ld-sh/tlsbin-2.d
ld/testsuite/ld-sh/tlspic-2.d
ld/testsuite/ld-shared/shared.exp
ld/testsuite/ld-sparc/sparc.exp
ld/testsuite/ld-tic6x/tic6x.exp
ld/testsuite/ld-vax-elf/vax-elf.exp
ld/testsuite/ld-x86-64/bnd-branch-1-now.d
ld/testsuite/ld-x86-64/bnd-ifunc-1-now.d
ld/testsuite/ld-x86-64/bnd-ifunc-1.d
ld/testsuite/ld-x86-64/bnd-ifunc-2-now.d
ld/testsuite/ld-x86-64/bnd-ifunc-2.d
ld/testsuite/ld-x86-64/bnd-plt-1-now.d
ld/testsuite/ld-x86-64/bnd-plt-1.d
ld/testsuite/ld-x86-64/ibt-plt-1-x32.d
ld/testsuite/ld-x86-64/ibt-plt-1.d
ld/testsuite/ld-x86-64/ibt-plt-2a-x32.d
ld/testsuite/ld-x86-64/ibt-plt-2a.d
ld/testsuite/ld-x86-64/ibt-plt-2c-x32.d
ld/testsuite/ld-x86-64/ibt-plt-2c.d
ld/testsuite/ld-x86-64/ibt-plt-3a-x32.d
ld/testsuite/ld-x86-64/ibt-plt-3a.d
ld/testsuite/ld-x86-64/ibt-plt-3c-x32.d
ld/testsuite/ld-x86-64/ibt-plt-3c.d
ld/testsuite/ld-x86-64/ilp32-4-nacl.d
ld/testsuite/ld-x86-64/ilp32-4.d
ld/testsuite/ld-x86-64/load1c-nacl.d
ld/testsuite/ld-x86-64/load1c.d
ld/testsuite/ld-x86-64/load1d-nacl.d
ld/testsuite/ld-x86-64/load1d.d
ld/testsuite/ld-x86-64/mpx.exp
ld/testsuite/ld-x86-64/pie3-nacl.d
ld/testsuite/ld-x86-64/pie3.d
ld/testsuite/ld-x86-64/pr14207.d
ld/testsuite/ld-x86-64/pr19162.d
ld/testsuite/ld-x86-64/pr19636-2d-nacl.d
ld/testsuite/ld-x86-64/pr19636-2d.d
ld/testsuite/ld-x86-64/pr20253-1d.d
ld/testsuite/ld-x86-64/pr20253-1f.d
ld/testsuite/ld-x86-64/pr20253-1j.d
ld/testsuite/ld-x86-64/pr20253-1l.d
ld/testsuite/ld-x86-64/pr20830a-now.d
ld/testsuite/ld-x86-64/pr20830a.d
ld/testsuite/ld-x86-64/pr20830b-now.d
ld/testsuite/ld-x86-64/pr20830b.d
ld/testsuite/ld-x86-64/pr21038a-now.d
ld/testsuite/ld-x86-64/pr21038a.d
ld/testsuite/ld-x86-64/pr21038b-now.d
ld/testsuite/ld-x86-64/pr21038b.d
ld/testsuite/ld-x86-64/pr21038c-now.d
ld/testsuite/ld-x86-64/pr21038c.d
ld/testsuite/ld-x86-64/x86-64.exp
ld/testsuite/ld-xtensa/xtensa.exp

index a041f0a07480420ef6e99eabfa7f92421c2cf4a7..33fb86848d515c0cb960e62deb0d60ad024d3f02 100644 (file)
@@ -1,3 +1,188 @@
+2017-08-07  Alan Modra  <amodra@gmail.com>
+
+       * testsuite/ld-alpha/alpha.exp: Add --hash-style=sysv to various
+       test's ld options.
+       * testsuite/ld-arm/arm-elf.exp: Likewise.
+       * testsuite/ld-elf/elf.exp: Likewise.
+       * testsuite/ld-elf/readelf.exp: Likewise.
+       * testsuite/ld-elfvsb/elfvsb.exp: Likewise.
+       * testsuite/ld-i386/i386.exp: Likewise.
+       * testsuite/ld-ia64/ia64.exp: Likewise.
+       * testsuite/ld-m68k/m68k.exp: Likewise.
+       * testsuite/ld-metag/metag.exp: Likewise.
+       * testsuite/ld-powerpc/powerpc.exp: Likewise.
+       * testsuite/ld-s390/s390.exp: Likewise.
+       * testsuite/ld-sh/sh-vxworks.exp: Likewise.
+       * testsuite/ld-shared/shared.exp: Likewise.
+       * testsuite/ld-sparc/sparc.exp: Likewise.
+       * testsuite/ld-tic6x/tic6x.exp: Likewise.
+       * testsuite/ld-vax-elf/vax-elf.exp: Likewise.
+       * testsuite/ld-x86-64/mpx.exp: Likewise.
+       * testsuite/ld-x86-64/x86-64.exp: Likewise.
+       * testsuite/ld-xtensa/xtensa.exp: Likewise.
+
+       * testsuite/ld-elf/comm-data2.ld: Add .gnu.hash output section.
+       * testsuite/ld-elf/pr20828-v.ld: Likewise.
+       * testsuite/ld-elf/pr20828.ld: Likewise.
+       * testsuite/ld-elf/pr21233.ld: Likewise.
+       * testsuite/ld-elf/pr21384.ld: Likewise.
+       * testsuite/ld-elf/provide-hidden-1.ld: Likewise.
+       * testsuite/ld-elf/provide-hidden-2.ld: Likewise.
+       * testsuite/ld-elf/provide-hidden-s.ld: Likewise.
+       * testsuite/ld-scripts/cross1.t: Likewise.
+
+       * testsuite/ld-elf/stab.d: Adjust allowed section indices.
+
+       * testsuite/ld-i386/pie1.d: Don't match addresses.
+       * testsuite/ld-i386/plt-pic2.dd: Likewise.
+       * testsuite/ld-i386/pr19636-1d.d: Likewise.
+       * testsuite/ld-i386/pr19636-2c.d: Likewise.
+       * testsuite/ld-powerpc/elfv2so.d: Likewise.
+       * testsuite/ld-powerpc/tlsopt5.d: Likewise.
+       * testsuite/ld-powerpc/tlsopt5.wf: Likewise.
+       * testsuite/ld-powerpc/tlsopt5_32.d: Likewise.
+
+       * testsuite/ld-i386/pr19636-2b.d: Don't match _start.
+
+       * testsuite/ld-powerpc/ambiguousv1.d: Relax symbol count, index
+       and address match.
+       * testsuite/ld-powerpc/ambiguousv1b.d: Likewise.
+       * testsuite/ld-powerpc/ambiguousv2.d: Likewise.
+       * testsuite/ld-powerpc/ambiguousv2b.d: Likewise.
+
+       * testsuite/ld-aarch64/gc-plt-relocs.d: Run ld with --hash-style=sysv.
+       * testsuite/ld-aarch64/ifunc-1.d: Likewise.
+       * testsuite/ld-aarch64/ifunc-2.d: Likewise.
+       * testsuite/ld-aarch64/ifunc-21.d: Likewise.
+       * testsuite/ld-aarch64/relasz.d: Likewise.
+       * testsuite/ld-aarch64/tls-small-ld.d: Likewise.
+       * testsuite/ld-aarch64/tls-tiny-ld.d: Likewise.
+       * testsuite/ld-arc/tls_gd-01.d: Likewise.
+       * testsuite/ld-cris/libdso-10.d: Likewise.
+       * testsuite/ld-cris/libdso-2.d: Likewise.
+       * testsuite/ld-cris/pic-gc-72.d: Likewise.
+       * testsuite/ld-cris/pic-gc-73.d: Likewise.
+       * testsuite/ld-cris/tls-gd-1.d: Likewise.
+       * testsuite/ld-cris/tls-gd-1h.d: Likewise.
+       * testsuite/ld-cris/tls-gd-2.d: Likewise.
+       * testsuite/ld-cris/tls-gd-2h.d: Likewise.
+       * testsuite/ld-cris/tls-ie-10.d: Likewise.
+       * testsuite/ld-cris/tls-ie-11.d: Likewise.
+       * testsuite/ld-cris/tls-ie-8.d: Likewise.
+       * testsuite/ld-cris/tls-ie-9.d: Likewise.
+       * testsuite/ld-cris/tls-ld-4.d: Likewise.
+       * testsuite/ld-cris/tls-ld-5.d: Likewise.
+       * testsuite/ld-cris/tls-ld-6.d: Likewise.
+       * testsuite/ld-cris/tls-ld-7.d: Likewise.
+       * testsuite/ld-cris/tls-ldgd-14.d: Likewise.
+       * testsuite/ld-cris/tls-ldgd-15.d: Likewise.
+       * testsuite/ld-cris/tls-ldgdx-14.d: Likewise.
+       * testsuite/ld-cris/tls-ldgdx-15.d: Likewise.
+       * testsuite/ld-cris/tls-local-54.d: Likewise.
+       * testsuite/ld-cris/tls-local-60.d: Likewise.
+       * testsuite/ld-cris/tls-local-61.d: Likewise.
+       * testsuite/ld-cris/weakhiddso.d: Likewise.
+       * testsuite/ld-elf/linkinfo1a.d: Likewise.
+       * testsuite/ld-elf/linkinfo1b.d: Likewise.
+       * testsuite/ld-elf/pr19617a.d: Likewise.
+       * testsuite/ld-elfvsb/hidden2.d: Likewise.
+       * testsuite/ld-frv/fdpic-pie-6.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-2.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-5.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-6.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-8.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-local-2.d: Likewise.
+       * testsuite/ld-frv/fdpic-shared-local-8.d: Likewise.
+       * testsuite/ld-frv/tls-dynamic-2.d: Likewise.
+       * testsuite/ld-i386/ibt-plt-1.d: Likewise.
+       * testsuite/ld-i386/ibt-plt-2a.d: Likewise.
+       * testsuite/ld-i386/ibt-plt-2c.d: Likewise.
+       * testsuite/ld-i386/ibt-plt-3a.d: Likewise.
+       * testsuite/ld-i386/ibt-plt-3c.d: Likewise.
+       * testsuite/ld-i386/pr20830.d: Likewise.
+       * testsuite/ld-ia64/merge1.d: Likewise.
+       * testsuite/ld-ia64/merge2.d: Likewise.
+       * testsuite/ld-ia64/merge3.d: Likewise.
+       * testsuite/ld-ia64/merge4.d: Likewise.
+       * testsuite/ld-ia64/merge5.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-1-local-x86.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise.
+       * testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
+       * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise.
+       * testsuite/ld-ifunc/pr17154-i386.d: Likewise.
+       * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise.
+       * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise.
+       * testsuite/ld-m68k/got-1.d: Likewise.
+       * testsuite/ld-m68k/got-multigot-12-13-14-34-35-ok.d: Likewise.
+       * testsuite/ld-m68k/got-multigot-14-ok.d: Likewise.
+       * testsuite/ld-m68k/got-multigot-15-er.d: Likewise.
+       * testsuite/ld-m68k/got-negative-12-13-14-34-ok.d: Likewise.
+       * testsuite/ld-m68k/got-negative-12-13-14-35-er.d: Likewise.
+       * testsuite/ld-m68k/got-negative-14-ok.d: Likewise.
+       * testsuite/ld-m68k/got-negative-15-er.d: Likewise.
+       * testsuite/ld-m68k/got-single-12-ok.d: Likewise.
+       * testsuite/ld-m68k/got-single-13-er.d: Likewise.
+       * testsuite/ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise.
+       * testsuite/ld-m68k/got-xgot-15-ok.d: Likewise.
+       * testsuite/ld-m68k/tls-gd-1.d: Likewise.
+       * testsuite/ld-m68k/tls-gd-2.d: Likewise.
+       * testsuite/ld-m68k/tls-gd-ie-1.d: Likewise.
+       * testsuite/ld-m68k/tls-ie-1.d: Likewise.
+       * testsuite/ld-m68k/tls-ld-1.d: Likewise.
+       * testsuite/ld-m68k/tls-ld-2.d: Likewise.
+       * testsuite/ld-sh/shared-2.d: Likewise.
+       * testsuite/ld-sh/tlsbin-2.d: Likewise.
+       * testsuite/ld-sh/tlspic-2.d: Likewise.
+       * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise.
+       * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
+       * testsuite/ld-x86-64/bnd-ifunc-1.d: Likewise.
+       * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
+       * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
+       * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
+       * testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-1.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise.
+       * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise.
+       * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise.
+       * testsuite/ld-x86-64/ilp32-4.d: Likewise.
+       * testsuite/ld-x86-64/load1c-nacl.d: Likewise.
+       * testsuite/ld-x86-64/load1c.d: Likewise.
+       * testsuite/ld-x86-64/load1d-nacl.d: Likewise.
+       * testsuite/ld-x86-64/load1d.d: Likewise.
+       * testsuite/ld-x86-64/pie3-nacl.d: Likewise.
+       * testsuite/ld-x86-64/pie3.d: Likewise.
+       * testsuite/ld-x86-64/pr14207.d: Likewise.
+       * testsuite/ld-x86-64/pr19162.d: Likewise.
+       * testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise.
+       * testsuite/ld-x86-64/pr19636-2d.d: Likewise.
+       * testsuite/ld-x86-64/pr20253-1d.d: Likewise.
+       * testsuite/ld-x86-64/pr20253-1f.d: Likewise.
+       * testsuite/ld-x86-64/pr20253-1j.d: Likewise.
+       * testsuite/ld-x86-64/pr20253-1l.d: Likewise.
+       * testsuite/ld-x86-64/pr20830a-now.d: Likewise.
+       * testsuite/ld-x86-64/pr20830a.d: Likewise.
+       * testsuite/ld-x86-64/pr20830b-now.d: Likewise.
+       * testsuite/ld-x86-64/pr20830b.d: Likewise.
+       * testsuite/ld-x86-64/pr21038a-now.d: Likewise.
+       * testsuite/ld-x86-64/pr21038a.d: Likewise.
+       * testsuite/ld-x86-64/pr21038b-now.d: Likewise.
+       * testsuite/ld-x86-64/pr21038b.d: Likewise.
+       * testsuite/ld-x86-64/pr21038c-now.d: Likewise.
+       * testsuite/ld-x86-64/pr21038c.d: Likewise.
+
 2017-08-06  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/21903:
index d9f9413317f20dbf6e1646dbc5084f4ef55158c0..0322c3c615c292e2ee3412332b3471958114ea37 100644 (file)
@@ -2,7 +2,7 @@
 #source: gc-plt-main.s
 #source: gc-plt-hidden.s
 #source: gc-plt2.s
-#ld: --gc-sections -T aarch64.ld --shared
+#ld: --gc-sections -T aarch64.ld --shared --hash-style=sysv
 #objdump: -dT
 
 # Shared object with plt related relocs against global symbol
index 9e522c91260044ef3f3652c80de094b15ea4ac19..06403033bc7cba3c397cef4e101f7f931451477b 100644 (file)
@@ -1,4 +1,4 @@
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -dw
 #target: aarch64*-*-*
 
index 70ce224aee860623c9ce9a08d10c9d18327a3880..b67e2822a4f2184f5f5973fed367f40875574fd6 100644 (file)
@@ -1,4 +1,4 @@
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -dw
 #target: aarch64*-*-*
 
index eef2e62b64cbd007f8b1aabfd78f6fa1338430d9..590495f7ed2a8aec65bace32eed1e34a28def384 100644 (file)
@@ -1,5 +1,5 @@
 #source: ifunc-21.s
-#ld: -shared -z nocombreloc
+#ld: -shared --hash-style=sysv -z nocombreloc
 #objdump: -d -s -j .got.plt -j .text
 #target: aarch64*-*-*
 
index 5cc5595f1958153c005bbdadd3c035d3be85db73..28fe83a4d59bb974136eda63e390d0d2adc5a636 100644 (file)
@@ -1,5 +1,5 @@
 #source: relasz.s
-#ld: -shared -Taarch64.ld
+#ld: -shared --hash-style=sysv -Taarch64.ld
 #readelf: -d
 # Check that the RELASZ section has the correct size even if we are
 # using a non-default linker script that merges .rela.dyn and .rela.plt
index 74cf25634fb1fb5f4ba7ae124f9eb50a1a99290a..dce10afabcbe8460e9d56015f73a5e05b5eca106 100644 (file)
@@ -1,5 +1,5 @@
 #source: tls-small-ld.s
-#ld: -T relocs.ld -shared
+#ld: -T relocs.ld -shared --hash-style=sysv
 #readelf: -Wr
 
 Relocation section '\.rela\.dyn' at offset 0x10070 contains 2 entries:
index f2cb60c50ca6a58b8d99cc7c70a3c4a00803d27b..a9eb0a53fb2e1b3219c8f9b3bf11e1b84c3342c8 100644 (file)
@@ -1,5 +1,5 @@
 #source: tls-tiny-ld.s
-#ld: -T relocs.ld -shared
+#ld: -T relocs.ld -shared --hash-style=sysv
 #readelf: -Wr
 
 Relocation section '\.rela\.dyn' at offset 0x10070 contains 2 entries:
index 0d115ba28559f434147e6aa429d12fa5b663e8f6..5b811c1b394206a5aa104045ff0c9d0102f6dc79 100644 (file)
@@ -37,7 +37,7 @@ if { !([istarget "alpha*-*-elf*"]
 # readelf: Apply readelf options on result.  Compare with regex (last arg).
 
 set alphatests {
-    {"TLS -fpic -shared" "-shared -melf64alpha" ""
+    {"TLS -fpic -shared" "-shared -melf64alpha --hash-style=sysv" ""
      "" {align.s tlspic1.s tlspic2.s}
      {{readelf -WSsrl tlspic.rd} {objdump -drj.text tlspic.dd}
       {objdump -sj.got tlspic.sd} {objdump -sj.tdata tlspic.td}}
@@ -45,12 +45,13 @@ set alphatests {
     {"Helper shared library" "-shared -melf64alpha" ""
      "" {tlslib.s} {} "libtlslib.so"}
     {"TLS -fpic and -fno-pic exec"
-     "-melf64alpha tmpdir/libtlslib.so" "" "" {align.s tlsbinpic.s tlsbin.s}
+     "-melf64alpha tmpdir/libtlslib.so --hash-style=sysv" ""
+     "" {align.s tlsbinpic.s tlsbin.s}
      {{readelf -WSsrl tlsbin.rd} {objdump -drj.text tlsbin.dd}
       {objdump -sj.got tlsbin.sd} {objdump -sj.tdata tlsbin.td}}
      "tlsbin"}
     {"TLS -fpic and -fno-pic exec -relax"
-     "-relax -melf64alpha tmpdir/libtlslib.so" ""
+     "-relax -melf64alpha --hash-style=sysv tmpdir/libtlslib.so" ""
      "" {align.s tlsbinpic.s tlsbin.s}
      {{readelf -WSsrl tlsbinr.rd} {objdump -drj.text tlsbinr.dd}
       {objdump -sj.got tlsbinr.sd}}
index d65f2cd0b585f5672ca98023ba9bdb4c8e2b78ed..19943856ce01fd74d224105c413da4ffbeac041c 100644 (file)
@@ -1,6 +1,6 @@
 #source: tls_gd-01.s
 #as: -mcpu=arc700
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 #xfail: arc*-*-elf*
 
index b15316c2176198c70cea9900fce5999f4ab23ea9..8bab9d8edbb999f07a7fd0c78fb98cccaef4cb85 100644 (file)
 
 if {[istarget "arm-*-vxworks"]} {
     set armvxworkstests {
-       {"VxWorks shared library test 1" "-shared -Tvxworks1.ld" ""
+       {"VxWorks shared library test 1"
+        "-shared -Tvxworks1.ld --hash-style=sysv" ""
         "" {vxworks1-lib.s}
         {{readelf --relocs vxworks1-lib.rd} {objdump -dr vxworks1-lib.dd}
          {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
         "libvxworks1.so"}
-       {"VxWorks executable test 1 (dynamic)" \
-        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic" ""
+       {"VxWorks executable test 1 (dynamic)"
+        "tmpdir/libvxworks1.so -Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks1.s}
         {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1.dd}}
         "vxworks1"}
        {"VxWorks executable test 2 (dynamic)" \
-        "-Tvxworks1.ld -q --force-dynamic" ""
+        "-Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2.sd}}
         "vxworks2"}
        {"VxWorks executable test 2 (static)"
-        "-Tvxworks1.ld" ""
+        "-Tvxworks1.ld --hash-style=sysv" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2-static.sd}}
         "vxworks2"}
@@ -99,43 +100,57 @@ set armelftests_common_1 {
     {"arm-rel31" "-static -T arm.ld" "" "" {arm-rel31.s}
      {{objdump -s arm-rel31.d}}
      "arm-rel31"}
-    {"arm-rel32" "-shared -T arm-dyn.ld" "" "" {arm-rel32.s}
+    {"arm-rel32" "-shared -T arm-dyn.ld --hash-style=sysv" "" "" {arm-rel32.s}
      {{objdump -Rsj.data arm-rel32.d}}
      "arm-rel32"}
     {"arm-call" "--no-fix-arm1176 -static -T arm.ld" "" "-meabi=4" {arm-call1.s arm-call2.s}
      {{objdump -d arm-call.d}}
      "arm-call"}
-    {"TLS shared library" "-shared -T arm-lib.ld" "" "" {tls-lib.s}
+    {"TLS shared library" "-shared -T arm-lib.ld --hash-style=sysv" ""
+     "" {tls-lib.s}
      {{objdump -fdw tls-lib.d} {objdump -Rw tls-lib.r}}
      "tls-lib.so"}
-    {"TLS dynamic application" "-T arm-dyn.ld tmpdir/tls-lib.so" "" "" {tls-app.s}
+    {"TLS dynamic application"
+     "-T arm-dyn.ld --hash-style=sysv tmpdir/tls-lib.so" "" "" {tls-app.s}
      {{objdump -fdw tls-app.d} {objdump -Rw tls-app.r}}
      "tls-app"}
-    {"TLS gnu shared library got" "-shared -T arm-dyn.ld" "" "" {tls-gdesc-got.s}
+    {"TLS gnu shared library got"
+     "-shared -T arm-dyn.ld --hash-style=sysv" "" "" {tls-gdesc-got.s}
      {{objdump "-fDR -j .got" tls-gdesc-got.d}}
      "tls-lib2-got.so"}
-    {"TLS gnu GD to IE relaxation" "-static -T arm-dyn.ld" "" "" {tls-gdierelax.s}
+    {"TLS gnu GD to IE relaxation"
+     "-static -T arm-dyn.ld --hash-style=sysv" "" "" {tls-gdierelax.s}
      {{objdump -fdw tls-gdierelax.d}}
      "tls-app-rel-ie"}
-    {"TLS gnu GD to IE shared relaxation" "--no-fix-arm1176 -shared -T arm-dyn.ld" "" "" {tls-gdierelax2.s}
+    {"TLS gnu GD to IE shared relaxation"
+     "--no-fix-arm1176 -shared -T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-gdierelax2.s}
      {{objdump -fdw tls-gdierelax2.d}}
      "tls-app-rel-ie2"}
-    {"TLS gnu GD to LE relaxation" "-T arm-dyn.ld" "" "" {tls-gdlerelax.s}
+    {"TLS gnu GD to LE relaxation" "-T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-gdlerelax.s}
      {{objdump -fdw tls-gdlerelax.d}}
      "tls-app-rel-le"}
-    {"TLS mixed models shared lib" "-shared -T arm-dyn.ld" "" "" {tls-mixed.s}
+    {"TLS mixed models shared lib"
+     "-shared -T arm-dyn.ld --hash-style=sysv" "" "" {tls-mixed.s}
      {{objdump -Rw tls-mixed.r}}
      "tls-mixed.so"}
-    {"TLS descseq relaxation" "-T arm-dyn.ld" "" "" {tls-descrelax.s}
+    {"TLS descseq relaxation"
+     "-T arm-dyn.ld --hash-style=sysv" "" "" {tls-descrelax.s}
      {{objdump -fdw tls-descrelax.d}}
      "tls-descrelax"}
-    {"TLS descseq relaxation v7" "-T arm-dyn.ld" "" "" {tls-descrelax-v7.s}
+    {"TLS descseq relaxation v7"
+     "-T arm-dyn.ld --hash-style=sysv" "" "" {tls-descrelax-v7.s}
      {{objdump -fdw tls-descrelax-v7.d}}
      "tls-descrelax-v7"}
-    {"TLS descseq relaxation BE8" "-T arm-dyn.ld -EB --be8" "" "-mbig-endian" {tls-descrelax-be8.s}
+    {"TLS descseq relaxation BE8"
+     "-T arm-dyn.ld --hash-style=sysv -EB --be8" ""
+     "-mbig-endian" {tls-descrelax-be8.s}
      {{objdump -fdw tls-descrelax-be8.d}}
      "tls-descrelax-be8"}
-    {"TLS descseq relaxation BE32" "-T arm-dyn.ld -EB" "" "-mbig-endian" {tls-descrelax-be32.s}
+    {"TLS descseq relaxation BE32"
+     "-T arm-dyn.ld --hash-style=sysv -EB" ""
+     "-mbig-endian" {tls-descrelax-be32.s}
      {{objdump -fdw tls-descrelax-be32.d}}
      "tls-descrelax-be32"}
     {"TLS local PIC symbol static link" "-T arm.ld" "" "" {tls-local-static.s}
@@ -229,7 +244,7 @@ set armelftests_common_3 {
     {"EABI ABI flags ld -r" "-r" "" "-mfloat-abi=soft -meabi=5" {eabi-soft-float.s}
      {{readelf -h eabi-soft-float-r.d}}
      "eabi-soft-float-r.o"}
-    {"PC-relative in -shared" "-shared" ""
+    {"PC-relative in -shared" "-shared --hash-style=sysv" ""
      "" {pcrel-shared.s}
      {{readelf -dr pcrel-shared.rd}}
      "pcrel-shared.so"}
@@ -267,7 +282,8 @@ set armelftests_nonacl {
     {"jump19" "-static -T arm.ld" "" "" {jump19.s}
      {{objdump -dr jump19.d}}
      "jump19"}
-    {"Thumb and -gc-sections" "-shared -T arm-dyn.ld" "" "" {gc-thumb-lib.s}
+    {"Thumb and -gc-sections"
+     "-shared -T arm-dyn.ld --hash-style=sysv" "" "" {gc-thumb-lib.s}
      {}
      "gc-thumb-lib.so"}
     {"Thumb and -gc-sections" "-pie -T arm.ld -gc-sections tmpdir/gc-thumb-lib.so" "" "" {gc-thumb.s}
@@ -294,32 +310,40 @@ set armelftests_nonacl {
     {"Non-pcrel function reference" "tmpdir/arm-lib.so" "" "" {arm-app-abs32.s}
      {{objdump -fdw arm-app-abs32.d} {objdump -Rw arm-app-abs32.r}}
      "arm-app-abs32"}
-    {"Thumb shared library with ARM entry points" "-shared -T arm-lib.ld" "" "-mthumb-interwork"
-     {mixed-lib.s}
+    {"Thumb shared library with ARM entry points"
+     "-shared -T arm-lib.ld --hash-style=sysv" ""
+     "-mthumb-interwork" {mixed-lib.s}
      {{objdump -fdw armthumb-lib.d} {readelf -Ds armthumb-lib.sym}}
      "armthumb-lib.so"}
-    {"Mixed ARM/Thumb shared library" "-shared -T arm-lib.ld -use-blx" "" ""
-     {mixed-lib.s}
+    {"Mixed ARM/Thumb shared library"
+     "-shared -T arm-lib.ld --hash-style=sysv -use-blx" ""
+     "" {mixed-lib.s}
      {{objdump -fdw mixed-lib.d} {objdump -Rw mixed-lib.r}
       {readelf -Ds mixed-lib.sym}}
      "mixed-lib.so"}
-    {"Mixed ARM/Thumb dynamic application" "tmpdir/mixed-lib.so -T arm-dyn.ld" "" ""
-     {mixed-app.s}
+    {"Mixed ARM/Thumb dynamic application"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv" ""
+     "" {mixed-app.s}
      {{objdump -fdw mixed-app.d} {objdump -Rw mixed-app.r}
       {readelf -Ds mixed-app.sym}}
      "mixed-app"}
-    {"Mixed ARM/Thumb arch5 dynamic application" "tmpdir/mixed-lib.so -T arm-dyn.ld --use-blx" "" ""
-     {mixed-app.s}
+    {"Mixed ARM/Thumb arch5 dynamic application"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv --use-blx" ""
+     "" {mixed-app.s}
      {{objdump -fdw mixed-app-v5.d} {objdump -Rw mixed-app.r}
       {readelf -Ds mixed-app.sym}}
      "mixed-app-v5"}
     {"Using Thumb lib by another lib" "-shared tmpdir/mixed-lib.so" "" "" {use-thumb-lib.s}
      {{readelf -Ds use-thumb-lib.sym}}
      "use-thumb-lib.so"}
-    {"TLS gnu shared library inlined trampoline" "--no-fix-arm1176 -shared -T arm-dyn.ld" "" "" {tls-descseq.s}
+    {"TLS gnu shared library inlined trampoline"
+     "--no-fix-arm1176 -shared -T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-descseq.s}
      {{objdump -fdw tls-descseq.d} {objdump -Rw tls-descseq.r}}
      "tls-lib2inline.so"}
-    {"TLS shared library gdesc local" "--no-fix-arm1176 -shared -T arm-dyn.ld" "" "" {tls-lib-loc.s}
+    {"TLS shared library gdesc local"
+     "--no-fix-arm1176 -shared -T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-lib-loc.s}
      {{objdump -fdw tls-lib-loc.d} {objdump -Rw tls-lib-loc.r}}
      "tls-lib-loc.so"}
 }
@@ -555,30 +579,35 @@ set armeabitests_nonacl {
      {{objdump -d farcall-mix2.d}}
      "farcall-mix2"}
 
-    {"Mixed ARM/Thumb dynamic application with farcalls" "tmpdir/mixed-lib.so -T arm-dyn.ld --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" "" ""
-     {farcall-mixed-app.s}
+    {"Mixed ARM/Thumb dynamic application with farcalls"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" ""
+     "" {farcall-mixed-app.s}
      {{objdump -fdw farcall-mixed-app.d} {objdump -Rw farcall-mixed-app.r}
       {readelf -Ds farcall-mixed-app.sym}}
      "farcall-mixed-app"}
-    {"Mixed ARM/Thumb arch5 dynamic application with farcalls" "tmpdir/mixed-lib.so -T arm-dyn.ld --use-blx --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" "" ""
-     {farcall-mixed-app.s}
+    {"Mixed ARM/Thumb arch5 dynamic application with farcalls"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv --use-blx --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" ""
+     "" {farcall-mixed-app.s}
      {{objdump -fdw farcall-mixed-app-v5.d} {objdump -Rw farcall-mixed-app.r}
       {readelf -Ds farcall-mixed-app.sym}}
      "farcall-mixed-app-v5"}
 
-    {"Mixed ARM/Thumb2 dynamic application with farcalls" "tmpdir/mixed-lib.so -T arm-dyn.ld --section-start .mid_thumb=0x10081c0 --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" "" ""
-     {farcall-mixed-app2.s}
+    {"Mixed ARM/Thumb2 dynamic application with farcalls"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv --section-start .mid_thumb=0x10081c0 --section-start .far_arm=0x2100000 --section-start .far_thumb=0x2200000" ""
+     "" {farcall-mixed-app2.s}
      {{objdump -fdw farcall-mixed-app2.d} {objdump -Rw farcall-mixed-app2.r}
       {readelf -Ds farcall-mixed-app2.sym}}
      "farcall-mixed-app2"}
 
-    {"Mixed ARM/Thumb shared library with long branches (v4t)" "-shared -T arm-lib.ld" "" "-march=armv4t"
-     {farcall-mixed-lib1.s farcall-mixed-lib2.s}
+    {"Mixed ARM/Thumb shared library with long branches (v4t)"
+     "-shared -T arm-lib.ld --hash-style=sysv" ""
+     "-march=armv4t" {farcall-mixed-lib1.s farcall-mixed-lib2.s}
      {{objdump -fdw farcall-mixed-lib-v4t.d}}
      "farcall-mixed-lib.so"}
 
-    {"Mixed ARM/Thumb shared library with long branches (v5t)" "--no-fix-arm1176 -shared -T arm-lib.ld" "" "-march=armv5t"
-     {farcall-mixed-lib1.s farcall-mixed-lib2.s}
+    {"Mixed ARM/Thumb shared library with long branches (v5t)"
+     "--no-fix-arm1176 -shared -T arm-lib.ld --hash-style=sysv" ""
+     "-march=armv5t" {farcall-mixed-lib1.s farcall-mixed-lib2.s}
      {{objdump -fdw farcall-mixed-lib.d}}
      "farcall-mixed-lib.so"}
 
@@ -773,19 +802,29 @@ set armeabitests_nonacl {
      {{objdump -d farcall-group-limit.d}}
      "farcall-group-limit"}
 
-    {"TLS gnu shared library" "--no-fix-arm1176 -shared -T arm-dyn.ld" "" "" {tls-gdesc.s}
+    {"TLS gnu shared library"
+     "--no-fix-arm1176 -shared -T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-gdesc.s}
      {{objdump -fdw tls-gdesc.d} {objdump -Rw tls-gdesc.r}}
      "tls-lib2.so"}
-    {"TLS gnu shared library non-lazy" "-z now -shared -T arm-dyn.ld" "" "" {tls-gdesc.s}
+    {"TLS gnu shared library non-lazy"
+     "-z now -shared -T arm-dyn.ld --hash-style=sysv" ""
+     "" {tls-gdesc.s}
      {{readelf "-x .got" tls-gdesc-nlazy.g}}
      "tls-lib2-nlazy.so"}
-    {"TLS long plt library" "-shared -T arm-dyn.ld --section-start .foo=0x4001000" "" "" {tls-longplt-lib.s}
+    {"TLS long plt library"
+     "-shared -T arm-dyn.ld --hash-style=sysv --section-start .foo=0x4001000" ""
+     "" {tls-longplt-lib.s}
      {{objdump -fdw tls-longplt-lib.d}}
      "tls-longplt-lib.so"}
-    {"TLS long plt" "-T arm-dyn.ld --section-start .foo=0x4001000 tmpdir/tls-longplt-lib.so" "" "" {tls-longplt.s}
+    {"TLS long plt"
+     "-T arm-dyn.ld --hash-style=sysv --section-start .foo=0x4001000 tmpdir/tls-longplt-lib.so" ""
+     "" {tls-longplt.s}
      {{objdump -fdw tls-longplt.d}}
      "tls-longplt"}
-    {"TLS thumb1" "-shared -T arm-dyn.ld --section-start .foo=0x4001000" "" "" {tls-thumb1.s}
+    {"TLS thumb1"
+     "-shared -T arm-dyn.ld --hash-style=sysv --section-start .foo=0x4001000" ""
+     "" {tls-thumb1.s}
      {{objdump -fdw tls-thumb1.d}}
      "tls-thumb1"}
     {"Cortex-A8 erratum fix, b.w"
@@ -867,7 +906,7 @@ set armeabitests_nonacl {
      {{objdump -dr cortex-a8-fix-blx-plt.d}}
      "cortex-a8-fix-blx-plt"}
     {"Cortex-A8 erratum fix, relocate bl.w to PLT"
-     "-EL --section-start=.plt=0x8e00 -Ttext=0x8f00 --fix-cortex-a8 -shared" ""
+     "-EL --section-start=.plt=0x8e00 -Ttext=0x8f00 --fix-cortex-a8 -shared --hash-style=sysv" ""
      "-EL" {cortex-a8-thumb-target.s cortex-a8-fix-bl-rel.s}
      {{objdump -dr cortex-a8-fix-bl-rel-plt.d}}
      "cortex-a8-fix-bl-rel-thumb"}
@@ -962,14 +1001,17 @@ set armeabitests_nonacl {
      "" {long-plt-format.s}
      {{objdump "-d -j .plt" long-plt-format.d}}
      "long-plt-format"}
-    {"IFUNC and TLS descriptor shared library" "-shared -T arm-lib.ld --version-script=ifunc-gdesc.ver" "" "" {ifunc-gdesc.s}
+    {"IFUNC and TLS descriptor shared library"
+     "-shared -T arm-lib.ld --hash-style=sysv --version-script=ifunc-gdesc.ver" ""
+     "" {ifunc-gdesc.s}
      {{objdump "-Rw" ifunc-gdesc.r}}
      "ifunc-gdesc.so"}
     {"arm-pic-veneer" "-static -T arm.ld --pic-veneer" "" "" {arm-pic-veneer.s}
      {{objdump -d arm-pic-veneer.d}}
      "arm-pic-veneer"}
-    {"Preempt Thumb symbol" "tmpdir/mixed-lib.so -T arm-dyn.ld --use-blx" "" ""
-     {preempt-app.s}
+    {"Preempt Thumb symbol"
+     "tmpdir/mixed-lib.so -T arm-dyn.ld --hash-style=sysv --use-blx" ""
+     "" {preempt-app.s}
      {{readelf -Ds preempt-app.sym}}
      "preempt-app"}
 }
index 43d96bdbd911cbafabb2a6c16c70fd32ac5e4426..83a14648d32ebce5a04a982946bbd4c7c3b4079a 100644 (file)
@@ -1,6 +1,6 @@
 #source: dso-1.s
 #as: --pic --no-underscore --march=v32 --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #objdump: -p -h
 
 # Sanity check; just an empty GOT.
index aa4a7c80427a40badabeed2aa30961219f8f77c8..f04b64b78f6a82efb9ebaf6d4797b8a7a42923bf 100644 (file)
@@ -1,7 +1,7 @@
 #source: dso-1.s
 #source: dso-2.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux --version-script $srcdir/$subdir/hide1
+#ld: --shared -m crislinux --hash-style=sysv --version-script $srcdir/$subdir/hide1
 #readelf: -S -s -r
 
 # Use "dsofn" from dso-1 in a GOTPLT reloc, but hide it in a
index 7e727525a29780e5d95c7402de340f71b97fbd87..a471da5f34f733b085112f0a26e4c7e298944b81 100644 (file)
@@ -2,7 +2,7 @@
 #source: expdref1.s
 #source: expdyn1.s
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: --shared -m crislinux --gc-sections
+#ld: --shared -m crislinux --gc-sections --hash-style=sysv
 #objdump: -s -t -R -p -T
 
 # Exercise PIC relocs through changed GC sweep function.
index 1ef22deb1b4cc83c4ba4c0b677fde58a95120f81..8fd7f388ab89d545885bf609c671eb093bf1b9b0 100644 (file)
@@ -1,7 +1,7 @@
 #source: pic-gc-73.s
 #source: expdyn1.s
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: --shared -m crislinux --gc-sections
+#ld: --shared -m crislinux --gc-sections --hash-style=sysv
 #objdump: -s -t -R -p -T
 
 # Left-over code coverage case from pic-gc-72; local symbol.
index 25de32d0f1b656f8954e7d6fa932dfeca32e94db..789c54e187ea46aefa55a078b735c630d16946a9 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-gd-1.s
 #source: tls128.s
 #source: tls-x.s
index 2e024bd44224797cf557bb9f59933ed1e0b95fcd..db60081393bdb0bb8084eb1b298de003ad708e5e 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-gd-1.s
 #source: tls128g.s
 #source: tls-hx.s
index 2f2546e6b6bdc254c53d0a8474c6765e69780fd3..cc35710f39813b54b7e20bdd4dcc60f558756ff7 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-gd-2.s
 #source: tls128g.s
 #source: tls-x.s
index f63be5c2fa619842ab93ac030fa53b9f752224cd..da3ef7d836d0fe18123d7c355123bed24589118c 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-gd-2.s
 #source: tls128g.s
 #source: tls-hx.s
index 869173c343a5801708b6cb58358088bf5ad12af1..7e9c32d596e80d7f560c24f67a3f01c8551aa56e 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ie-10.s
 #source: tls128g.s
 #source: tls-x.s
index d326fbe73979d38966eb07e619e83a6e9d7a6e8f..e2310402037e73aaab7127ec3c08a04396cd1f7d 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ie-11.s
 #source: tls128g.s
 #source: tls-x1x2.s
index 3c7769b64e36b171b02ada1ced4ad9558da308b0..f62d599465f8c7b5017473dc294fe97171a8657e 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ie-8.s
 #source: tls128g.s
 #source: tls-x.s
index 673ae4fee86096e27c360bcf4959624fd49c1077..b9d9ee6008401ff653f19d3de28db6a0c79bfbfb 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ie-9.s
 #source: tls128g.s
 #source: tls-x1x2.s
index 2ac3d71cb5785f3a76ba3d5c3f127ca4c5f52d35..46e5e9bbf18b6efbfeb84eaf117b9a1edf57a977 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ld-4.s
 #source: tls128g.s
 #source: tls-hx.s
index c2ea111100f526a87663a92de876c14bc0bf3f72..d5982d94a7da8edcefd8ca38b6c70dbdf1d0b394 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ld-5.s
 #source: tls128g.s
 #source: tls-hx1x2.s
index 0b54114c0d59ed92d23888f307c8c583545a2823..487c63ed069fbbb5a05d26edd1deb1b6c193f7e5 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls128g.s
 #source: tls-ld-6.s
 #source: tls-hx.s
index c537050d1b0b0afbc84f37e76fad3bf7cfdc7a7a..db034af0fde1987fc4a42938502eddf6daa8e8f2 100644 (file)
@@ -1,5 +1,5 @@
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #source: tls-ld-7.s
 #source: tls128g.s
 #source: tls-hx1x2.s
index 4634dd2e0a6c5968121db103628242255aeaea38..01cb97553d15154d370037c2c0cf9ca14554b30a 100644 (file)
@@ -6,7 +6,7 @@
 #source: tls-z.s
 #source: tls-hx1x2.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #objdump: -s -t -R -p -T
 
 # Check that we have proper NPTL/TLS markings and GOT for two
index 8583bd234415d5e68a1316127c7760a846ec418c..6d5ac81a904711c7b74013949c80c7fb8005bc01 100644 (file)
@@ -6,7 +6,7 @@
 #source: tls-z.s
 #source: tls-hx1x2.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #objdump: -s -t -R -p -T
 
 # Check that we have proper NPTL/TLS markings and GOT for two
index 53fde9c96f8390ef446a36f3aa01a8a72cd55e00..1d3dcde6a71e117202ab3dae2973695437f35bb9 100644 (file)
@@ -4,7 +4,7 @@
 #source: tls-ldgd-14.s
 #source: tls-hx1x2.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux tmpdir/tls-dso-xz-1.so
+#ld: --shared -m crislinux --hash-style=sysv tmpdir/tls-dso-xz-1.so
 #objdump: -s -h -t -T -R -r -p
 
 # Check that we have proper NPTL/TLS markings and GOT for two
index 8b0af3f73617c6bfce990923fd95ef0caa8b51a0..59f3aae1715a53d24363a63ae974ce3f015bce47 100644 (file)
@@ -4,7 +4,7 @@
 #source: tls-ldgd-15.s
 #source: tls-hx1x2.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux tmpdir/tls-dso-xz-1.so
+#ld: --shared -m crislinux --hash-style=sysv tmpdir/tls-dso-xz-1.so
 #objdump: -s -h -t -T -R -r -p
 
 # Check that we have proper NPTL/TLS markings and GOT for two
index 7c0deb6ac2823ac4a09ac34e86c694860347c033..337fbd56b84657067159d8257cc2f0dd49e8480b 100644 (file)
@@ -1,6 +1,6 @@
 #source: tls-local-54.s
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: --shared -m crislinux
+#ld: --shared -m crislinux --hash-style=sysv
 #objdump: -s -t -R -p -T
 
 # A DSO with a R_CRIS_32_GOT_GD against a local symbol.
index 958a29655f9960346c0b1f15931b7912ae91cf62..a2ed60124e33cea1286cdd0229c0b55882ac1fe7 100644 (file)
@@ -1,7 +1,7 @@
 #source: tls-x.s
 #source: tls-local-59.s
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: -m crislinux --shared
+#ld: -m crislinux --shared --hash-style=sysv
 #objdump: -s -t -r -p -R -T
 
 # A DSO with a R_CRIS_32_GOT_GD, a R_CRIS_16_GOT_GD, a
index bfa4a25c1e15e527869ea4358bad4b591e447d91..54d2786755fb001285896cf05972b5e81f335b46 100644 (file)
@@ -1,6 +1,6 @@
 #source: tls-local-59.s
 #as: --pic --no-underscore --em=criself -I$srcdir/$subdir
-#ld: -m crislinux --shared
+#ld: -m crislinux --shared --hash-style=sysv
 #objdump: -s -t -r -p -R -T
 
 # A DSO with a R_CRIS_32_GOT_GD, a R_CRIS_16_GOT_GD, a
index 01940f737b6d0cdab89e492cb193d4458b9b9dc8..71a4bdb7b47550f0a72c5aa1d876a5e6fc5f6439 100644 (file)
@@ -1,6 +1,6 @@
 #source: weakhid.s
 #as: --pic --no-underscore --em=criself
-#ld: --shared -m crislinux -z nocombreloc
+#ld: --shared -m crislinux -z nocombreloc --hash-style=sysv
 #objdump: -s -R -T
 
 # Check that .weak and .weak .hidden object references are handled
index 32444537d27d60e31c44ad60998b14aba8013497..ea1ac5b0bbfd63f73f59c76b124fb10bbec21bbc 100644 (file)
@@ -9,6 +9,7 @@ SECTIONS
   .rela.dyn : { *(.rela.*) }
   .interp : { *(.interp) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   . = 0x76540000;
index 80a8c42bf9fca5e2d4a9040c5980f388fa9fd36e..655f0daf230d54d9cff35acb5c975ce45cadc681 100644 (file)
@@ -104,7 +104,7 @@ if { [check_shared_lib_support] } then {
     setup_xfail "tic6x-*-*"
     run_ld_link_tests {
        {"Build shared library for next test"
-           "-shared" "" "" "note-3.s" {} "note-3.so" }
+           "-shared --hash-style=sysv" "" "" "note-3.s" {} "note-3.so" }
        {"Link using broken linker script"
            "--script note-3.t tmpdir/note-3.so" "" "" ""
            { { ld "note-3.l" } }
index b5ccf6fee189e5e70ebea4d50465e3af9fd826c5..1aeaf00f86ad8f07c1c54e1a55fc8f9996313f2a 100644 (file)
@@ -1,5 +1,5 @@
 #source: linkinfo1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -SW
 #target: x86_64-* i?86-*
 
index cb176831cd6ffd5fcbeb897c9e3b9b3fb5eaf7e0..f8e3bd033aef52ea7d6cb75b12aed5f8a4037830 100644 (file)
@@ -1,5 +1,5 @@
 #source: linkinfo1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objcopy_linked_file: --strip-debug
 #readelf: -SW
 #target: x86_64-* i?86-*
index 132021fbb55e91b8148e84caafb626287116abc1..a565e291ac3fa4a6b0706443929c455157db36f5 100644 (file)
@@ -1,5 +1,5 @@
 #source: pr19617.s
-#ld: -E --no-dynamic-linker
+#ld: -E --no-dynamic-linker --hash-style=sysv
 #readelf : --dyn-syms --wide
 #target: *-*-linux* *-*-gnu* *-*-solaris*
 
index cdba796172e24597dd252edede096e35d0c142f3..5800aa0e16d8919980518b128bbbba86a1ff91f7 100644 (file)
@@ -1,6 +1,7 @@
 SECTIONS
 {
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   .gnu.version : { *(.gnu.version) }
index 034887dfe79445291d227b23063ed501210e7f01..9bea8d21e9e0c2c7bdcb46fb33b375a5c02e6407 100644 (file)
@@ -8,6 +8,7 @@ SECTIONS
   }
   .dynamic : { *(.dynamic) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   .gnu.version : { *(.gnu.version) }
index a3b547bac4ffb84b9f6012ce3afefc8e20a660ca..03a28ccfdc9c524ee4b983fd76828838f66ec536 100644 (file)
@@ -1,6 +1,7 @@
 SECTIONS
 {
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   .rel.dyn : { *(.rel.dyn) }
index 034887dfe79445291d227b23063ed501210e7f01..9bea8d21e9e0c2c7bdcb46fb33b375a5c02e6407 100644 (file)
@@ -8,6 +8,7 @@ SECTIONS
   }
   .dynamic : { *(.dynamic) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   .gnu.version : { *(.gnu.version) }
index 479862db936006de94ee17f46dee0a0d9439a4c3..ab10bc909b0ef5dcb73b490190eb0e11f68cbdec 100644 (file)
@@ -13,4 +13,5 @@ SECTIONS
   .dynstr : { *(.dynstr) }
   .dynamic : { *(.dynamic) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
 }
index 17e526bff9b7a3b0ab7d263c2fe8161c7ebad67c..3fc7513e0d4a4714663a1114255dd0e52eae31bc 100644 (file)
@@ -9,4 +9,5 @@ SECTIONS
   .dynstr : { *(.dynstr) }
   .dynamic : { *(.dynamic) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
 }
index fc5761a2c024916ab85f49c5f05e2852f66dfae0..bd6aaf0d8bb8d75c9689aa0a23f82e56953499d1 100644 (file)
@@ -9,4 +9,5 @@ SECTIONS
   .dynstr : { *(.dynstr) }
   .dynamic : { *(.dynamic) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
 }
index 6831c191865b1344698b733270239ca58014bdf2..82673f6ea977e888ce44f2c6e1da1113517b3a74 100644 (file)
@@ -44,7 +44,7 @@ if [check_shared_lib_support] {
        [list \
            "readelf version information" \
            "$LFLAGS --no-dynamic-linker -e 0 --export-dynamic -T ver_def.ld\
-            --version-script=ver_def.ver" \
+             --hash-style=sysv --version-script=ver_def.ver" \
            "" "" \
            {ver_def.s} \
            [list [list readelf --version-info ver_def$DUMP.vd]] \
index 346640da0bd1dd1a1949881618f730123bc0421e..27b99cb39b5dd5ce6f91ee7d265040dfdf877524 100644 (file)
@@ -5,10 +5,10 @@
 #notarget: "ia64-*-*" "alpha*"
 
 # Disabled on alpha because the entry point may be above 4GB but the stabs
-# value on 32 bits.
+# value only 32 bits.
 
 #...
-  \[[0-9 ][0-9]\] \.stab +PROGBITS +0+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ +[1-9]+ +0.*
+.* \.stab +PROGBITS +0+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ +[1-9][0-9]* +0.*
 #...
-  \[[0-9 ][0-9]\] \.stabstr +STRTAB +0+ [0-9a-f]+ [0-9a-f]+ 00 +0 +0.*
+.* \.stabstr +STRTAB +0+ [0-9a-f]+ [0-9a-f]+ 00 +0 +0.*
 #...
index 7552f7a1bbd2822b56c5d07f27d015e695af02d7..8e2b55b683bc8ef57dd5e100b33185d530115b72 100644 (file)
@@ -377,7 +377,7 @@ proc visibility_run {visibility} {
 
            visibility_test $visibility vnp "visibility ($visibility) (non PIC, load offset)" \
                mainnp.o sh1np.o sh2np.o elfvsb \
-               "-T $srcdir/$subdir/elf-offset.ld"
+               "-Wl,-T,$srcdir/$subdir/elf-offset.ld,--hash-style=sysv"
        } }
 
        # Now compile the code using -fpic.
index 30f7f952e1afd7e919b4d3eef37ea7f0d2330b55..72a42d57bc27d4831f0e41fb1287e579f82db624 100644 (file)
@@ -1,5 +1,5 @@
 #source: hidden2.s
-#ld: -shared -T hidden2.ld
+#ld: -shared -T hidden2.ld --hash-style=sysv
 #readelf: -Ds
 # It is also ok to remove this symbol, but we currently make it local.
 
index 743166e47b6727dd358931a039f24a1d37c4c625..2285322a4d95489e59ea4894354acbc59abb5def 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to weak undefined symbols, pie linking
 #source: fdpic6.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -pie --defsym WD1=D6
+#ld: -pie --hash-style=sysv --defsym WD1=D6
 
 .*:     file format elf.*frv.*
 
index 13e140a41b59dfe942c7459acb4564cf32b5cad4..85ab28d19ae603e6a97d7a0004d1b9be9d4e22f6 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to (mostly) global symbols, shared linking
 #source: fdpic2.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -shared --version-script fdpic2min.ldv
+#ld: -shared --hash-style=sysv --version-script fdpic2min.ldv
 
 .*:     file format elf.*frv.*
 
index dbfd143f0cf931ffbd8e56714a160d9c4816fda5..6ec516a14deb045189648cf0cb1cd029634764ed 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to undefined symbols, shared linking
 #source: fdpic5.s
 #objdump: -DRz -j .text -j .data -j .got -j .plt
-#ld: -shared
+#ld: -shared --hash-style=sysv
 
 .*:     file format elf.*frv.*
 
index 2191af8126daa840e80b4f11d9e6ea757a8bf383..70111fb6acb5ad4f63f1b7ab3ede8a1540c40d94 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to weak undefined symbols, shared linking
 #source: fdpic6.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -shared --defsym WD1=D6 --version-script fdpic6.ldv
+#ld: -shared --hash-style=sysv --defsym WD1=D6 --version-script fdpic6.ldv
 
 .*:     file format elf.*frv.*
 
index e50e7b943aa7ebceb0f28834bc5718dfb7c598ba..30a9cfb2962844e919adcff21c48acc3c6c6567f 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to (mostly) global symbols with addends, shared linking
 #source: fdpic8.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -shared --version-script fdpic8min.ldv
+#ld: -shared --hash-style=sysv --version-script fdpic8min.ldv
 
 .*:     file format elf.*frv.*
 
index 0074172641cd2be412e93e57ea5923bc88ef33c5..76fd7773ee85cc84fcbe14c21e04b83c5bce36b3 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to forced-local symbols, shared linking
 #source: fdpic2.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -shared --version-script fdpic2.ldv
+#ld: -shared --hash-style=sysv --version-script fdpic2.ldv
 
 .*:     file format elf.*frv.*
 
index 7d238e9023e2bf426c86236ac9b99e039688179b..82130a1daf02a2d36f6bab29a1534fe385ef27b6 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV uClinux PIC relocs to forced-local symbols with addends, shared linking
 #source: fdpic8.s
 #objdump: -DR -j .text -j .data -j .got -j .plt
-#ld: -shared --version-script fdpic8.ldv
+#ld: -shared --hash-style=sysv --version-script fdpic8.ldv
 
 .*:     file format elf.*frv.*
 
index d943e86b80f704b185b251c6cd1ee0a367b238d5..be7e6c89ba6d49139e1dac158ca5b0e1cc0c7ca4 100644 (file)
@@ -1,7 +1,7 @@
 #name: FRV TLS relocs with addends, dynamic linking
 #source: tls-2.s
 #objdump: -DR -j .text -j .got -j .plt
-#ld: tmpdir/tls-1-dep.so
+#ld: --hash-style=sysv tmpdir/tls-1-dep.so
 
 .*:     file format elf.*frv.*
 
index ba39fc132e9b076630b3bcbfe92cac0c120af943..2d7d532a49c46f86d9b8d82e6508caf0bcbc8d5c 100644 (file)
 
 if {[istarget "i?86-*-vxworks"]} {
     set i386tests {
-       {"VxWorks shared library test 1" "-shared -Tvxworks1.ld" ""
+       {"VxWorks shared library test 1"
+        "-shared -Tvxworks1.ld --hash-style=sysv" ""
         "" {vxworks1-lib.s}
         {{readelf --relocs vxworks1-lib.rd} {objdump -dr vxworks1-lib.dd}
          {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
         "libvxworks1.so"}
        {"VxWorks executable test 1 (dynamic)" \
-        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic" ""
+        "tmpdir/libvxworks1.so -Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks1.s}
         {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1.dd}}
         "vxworks1"}
        {"VxWorks executable test 2 (dynamic)" \
-        "-Tvxworks1.ld -q --force-dynamic" ""
+        "-Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2.sd}}
         "vxworks2"}
        {"VxWorks executable test 2 (static)"
-        "-Tvxworks1.ld" ""
+        "-Tvxworks1.ld --hash-style=sysv" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2-static.sd}}
         "vxworks2"}
@@ -128,20 +129,20 @@ set i386tests {
      "-shared -melf_i386 tmpdir/libpltlib.so" "" "--32" {plt-pic.s}
      {{objdump -drj.plt plt-pic.pd}} "libplt-pic.so"}
     {"TLS -fpic -shared transitions"
-     "-shared -melf_i386 --no-ld-generated-unwind-info" ""
+     "-shared -melf_i386 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlspic1.s tlspic2.s}
      {{readelf -Ssrl tlspic.rd} {objdump -drj.text tlspic.dd}
       {objdump -sj.got tlspic.sd} {objdump -sj.tdata tlspic.td}}
       "libtlspic.so"}
     {"TLS -fpic -shared transitions without PLT"
-     "-shared -melf_i386 --no-ld-generated-unwind-info" ""
+     "-shared -melf_i386 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "-mrelax-relocations=yes --32"
      {tlspic3.s tlspic2.s}
      {{readelf -Ssrl tlspic2.rd} {objdump -drj.text tlspic2.dd}
       {objdump -sj.got tlspic2.sd} {objdump -sj.tdata tlspic2.td}}
       "libtlspic2.so"}
     {"TLS descriptor -fpic -shared transitions"
-     "-shared -melf_i386 --no-ld-generated-unwind-info" ""
+     "-shared -melf_i386 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlsdesc.s tlspic2.s}
      {{readelf -Ssrl tlsdesc.rd} {objdump -drj.text tlsdesc.dd}
       {objdump "-s -j.got -j.got.plt" tlsdesc.sd} {objdump -sj.tdata tlsdesc.td}}
@@ -149,31 +150,31 @@ set i386tests {
     {"Helper shared library" "-shared -melf_i386" ""
      "--32" {tlslib.s} {} "libtlslib.so"}
     {"TLS -fpic and -fno-pic exec transitions"
-     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlsbinpic.s tlsbin.s}
      {{readelf -Ssrl tlsbin.rd} {objdump -drj.text tlsbin.dd}
       {objdump -sj.got tlsbin.sd} {objdump -sj.tdata tlsbin.td}}
       "tlsbin"}
     {"TLS -fpic and -fno-pic exec transitions without PLT"
-     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "-mrelax-relocations=yes --32"
      {tlsbinpic2.s tlsbin.s}
      {{readelf -Ssrl tlsbin2.rd} {objdump -drj.text tlsbin2.dd}
       {objdump -sj.got tlsbin2.sd} {objdump -sj.tdata tlsbin2.td}}
       "tlsbin2"}
     {"TLS descriptor -fpic and -fno-pic exec transitions"
-     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlsbindesc.s tlsbin.s}
      {{readelf -Ssrl tlsbindesc.rd} {objdump -drj.text tlsbindesc.dd}
       {objdump -sj.got tlsbindesc.sd} {objdump -sj.tdata tlsbindesc.td}}
       "tlsbindesc"}
     {"TLS -fno-pic -shared"
-     "-shared -melf_i386 --no-ld-generated-unwind-info" ""
+     "-shared -melf_i386 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlsnopic1.s tlsnopic2.s}
      {{readelf -Ssrl tlsnopic.rd} {objdump -drj.text tlsnopic.dd}
       {objdump -sj.got tlsnopic.sd}} "libtlsnopic.so"}
     {"TLS with global dynamic and descriptors"
-     "-shared -melf_i386 --no-ld-generated-unwind-info" ""
+     "-shared -melf_i386 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--32" {tlsgdesc.s}
      {{readelf -Ssrl tlsgdesc.rd} {objdump -drj.text tlsgdesc.dd}}
       "libtlsgdesc.so"}
@@ -1271,7 +1272,7 @@ if { !([istarget "i?86-*-linux*"]
 run_ld_link_tests [list \
     [list \
        "basic PLT generation (non-PIC, -z now)" \
-       "-z now -melf_i386 tmpdir/libpltlib.so" \
+       "-z now -melf_i386 --hash-style=sysv tmpdir/libpltlib.so" \
        "" \
        "--32" \
        {plt2.s} \
index 1c905915e49854c778de61acbfb00b97b2ef58cc..25f259f7c804980d498b2806043ebe0f11f81940 100644 (file)
@@ -1,5 +1,5 @@
 #as: --32
-#ld: -shared -m elf_i386
+#ld: -shared -m elf_i386 --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 4881dea1c47ec641aa23ff7c442b4e6006a3aab5..1857ef893e6a383c507aa7b6e197c7c46669fccc 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --32
-#ld: -shared -m elf_i386 -z ibtplt
+#ld: -shared -m elf_i386 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 2ba1d78c54b09ced93cf7bcbee09f3588730d87e..68db5586bc2581faca6a3bbe45e47d9b01193b64 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --32
-#ld: -shared -m elf_i386 -z ibt
+#ld: -shared -m elf_i386 -z ibt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index c2ce3fd6fcd822ae64de466d9f96b26f59d18223..61f0cbef0d41cf1e37d8ac1c8b6a1054f20bf5e5 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --32
-#ld: -shared -m elf_i386 -z ibtplt
+#ld: -shared -m elf_i386 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index c2ce3fd6fcd822ae64de466d9f96b26f59d18223..61f0cbef0d41cf1e37d8ac1c8b6a1054f20bf5e5 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --32
-#ld: -shared -m elf_i386 -z ibtplt
+#ld: -shared -m elf_i386 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index fb35342321e77f88bf18bf41027ec3e9ed424f95..e77b8dc04f967446c05aeb37a8dbf91aeab358db 100644 (file)
@@ -12,6 +12,6 @@ SYMBOL TABLE:
 
 Disassembly of section .text:
 
-0+129 <_start>:
- +129: 8d 80 00 e0 ff ff       lea    -0x2000\(%eax\),%eax
+.* <_start>:
+.*:    8d 80 00 e0 ff ff       lea    -0x2000\(%eax\),%eax
 #pass
index 4047db5e4deb146dcd02b8cb07146723d5f9b939..1d81c76007b8f81025b7ee4b3f54801b1cea1eac 100644 (file)
@@ -9,25 +9,25 @@
 
 Disassembly of section .plt:
 
-0+180 <.plt>:
+.* <.plt>:
  +[a-f0-9]+:   ff b3 04 00 00 00       pushl  0x4\(%ebx\)
  +[a-f0-9]+:   ff a3 08 00 00 00       jmp    \*0x8\(%ebx\)
  +[a-f0-9]+:   00 00                   add    %al,\(%eax\)
        ...
 
-0+190 <fn1@plt>:
+.* <fn1@plt>:
  +[a-f0-9]+:   ff a3 0c 00 00 00       jmp    \*0xc\(%ebx\)
  +[a-f0-9]+:   68 00 00 00 00          push   \$0x0
- +[a-f0-9]+:   e9 e0 ff ff ff          jmp    180 <.plt>
+ +[a-f0-9]+:   e9 e0 ff ff ff          jmp    .* <.plt>
 
-0+1a0 <fn2@plt>:
+.* <fn2@plt>:
  +[a-f0-9]+:   ff a3 10 00 00 00       jmp    \*0x10\(%ebx\)
  +[a-f0-9]+:   68 08 00 00 00          push   \$0x8
- +[a-f0-9]+:   e9 d0 ff ff ff          jmp    180 <.plt>
+ +[a-f0-9]+:   e9 d0 ff ff ff          jmp    .* <.plt>
 
 Disassembly of section .text:
 
-0+1b0 <foo>:
- +[a-f0-9]+:   e8 db ff ff ff          call   190 <fn1@plt>
- +[a-f0-9]+:   e9 e6 ff ff ff          jmp    1a0 <fn2@plt>
+.* <foo>:
+ +[a-f0-9]+:   e8 db ff ff ff          call   .* <fn1@plt>
+ +[a-f0-9]+:   e9 e6 ff ff ff          jmp    .* <fn2@plt>
 #pass
index ac867867e7917a43b3e42435fbe0d783c5c22118..e667cae2e7a001585d6bdb6751528afc6398a699 100644 (file)
@@ -9,7 +9,7 @@
 
 Disassembly of section .plt:
 
-0+c0 <.plt>:
+.* <.plt>:
 [      ]*[a-f0-9]+:    ff b3 04 00 00 00       pushl  0x4\(%ebx\)
 [      ]*[a-f0-9]+:    ff a3 08 00 00 00       jmp    \*0x8\(%ebx\)
 [      ]*[a-f0-9]+:    00 00                   add    %al,\(%eax\)
@@ -20,7 +20,7 @@ Disassembly of section .plt:
 
 Disassembly of section .text:
 
-0+e0 <_start>:
+.* <_start>:
 [      ]*[a-f0-9]+:    3b 80 f8 ff ff ff       cmp    -0x8\(%eax\),%eax
 [      ]*[a-f0-9]+:    ff a0 fc ff ff ff       jmp    \*-0x4\(%eax\)
-[      ]*[a-f0-9]+:    e8 df ff ff ff          call   d0 <.*>
+[      ]*[a-f0-9]+:    e8 df ff ff ff          call   .* <\.plt\+0x10>
index 9a0a26314ee8fda9d11fdb90370ebd82ef645919..ac210259832ca23c1a29418e441cff35ddec75b8 100644 (file)
@@ -9,8 +9,6 @@ Relocation section '\.rel\.dyn' at offset [0x0-9a-f]+ contains 1 entries:
 
 Symbol table '\.dynsym' contains [0-9]+ entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
-#...
- +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +DEFAULT +[0-9]+ +_start
 #...
  +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +WEAK +DEFAULT +UND +func
 #...
index 08db1193ad7889a0d2ac6b5a4698433c05d87503..3c7cd6def3cc1fcb7778ed1ae416c797bf5b9cc9 100644 (file)
@@ -9,20 +9,20 @@
 
 Disassembly of section .plt:
 
-0+130 <.plt>:
+.* <.plt>:
 [      ]*[a-f0-9]+:    ff b3 04 00 00 00       pushl  0x4\(%ebx\)
 [      ]*[a-f0-9]+:    ff a3 08 00 00 00       jmp    \*0x8\(%ebx\)
 [      ]*[a-f0-9]+:    00 00                   add    %al,\(%eax\)
 [      ]*[a-f0-9]+:    00 00                   add    %al,\(%eax\)
 [      ]*[a-f0-9]+:    ff a3 0c 00 00 00       jmp    \*0xc\(%ebx\)
 [      ]*[a-f0-9]+:    68 00 00 00 00          push   \$0x0
-[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    150 <_start>
+[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    .* <_start>
 
 Disassembly of section .text:
 
-0+150 <_start>:
+.* <_start>:
 [      ]*[a-f0-9]+:    3b 80 fc ff ff ff       cmp    -0x4\(%eax\),%eax
 [      ]*[a-f0-9]+:    ff a0 fc ff ff ff       jmp    \*-0x4\(%eax\)
-[      ]*[a-f0-9]+:    e8 df ff ff ff          call   140 <.*>
+[      ]*[a-f0-9]+:    e8 df ff ff ff          call   .* <\.plt\+0x10>
 [      ]*[a-f0-9]+:    3d 00 00 00 00          cmp    \$0x0,%eax
-[      ]*[a-f0-9]+:    e8 fc ff ff ff          call   167 <.*>
+[      ]*[a-f0-9]+:    e8 fc ff ff ff          call   .* <_start\+0x17>
index 55fe92475daf07233b0ef56e42a5ba747b8345c8..26caabb95057f59f3d77b01e3d56a261e187d215 100644 (file)
@@ -1,6 +1,6 @@
 #name: PR ld/20830 (.plt.got)
 #as: --32
-#ld: -melf_i386 -shared -z relro --ld-generated-unwind-info
+#ld: -melf_i386 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 88c8df6b2861f3e9ffb508f647e1fd5eab953811..76f9e62f0492cf41019d8638147a8c7f7960c173 100644 (file)
@@ -37,7 +37,7 @@ if { !([istarget "ia64-*-elf*"]
 # readelf: Apply readelf options on result.  Compare with regex (last arg).
 
 set ia64tests {
-    {"TLS -fpic -shared" "-shared" ""
+    {"TLS -fpic -shared" "-shared --hash-style=sysv" ""
      "-mtune=itanium1" {tlspic1.s tlspic2.s}
      {{readelf -WSsrl tlspic.rd} {objdump -drj.text tlspic.dd}
       {objdump -sj.got tlspic.sd} {objdump -sj.tdata tlspic.td}}
@@ -45,7 +45,8 @@ set ia64tests {
     {"Helper shared library" "-shared" ""
      "" {tlslib.s} {} "libtlslib.so"}
     {"TLS -fpic and -fno-pic exec"
-     "tmpdir/libtlslib.so" "" "-mtune=itanium1" {tlsbinpic.s tlsbin.s}
+     "tmpdir/libtlslib.so --hash-style=sysv" ""
+     "-mtune=itanium1" {tlsbinpic.s tlsbin.s}
      {{readelf -WSsrl tlsbin.rd} {objdump -drj.text tlsbin.dd}
       {objdump -sj.got tlsbin.sd} {objdump -sj.tdata tlsbin.td}}
       "tlsbin"}
index 39882b8674fa279013191dba1dc36bf70deb45af..0cc8bd1b2963eaa8b770a5f8af70fe957667a4ac 100644 (file)
@@ -1,6 +1,6 @@
 #source: merge1.s
 #as: -x
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 
 #...
index dde3d097d1ff9381d6b15cda9ea5316d65848c33..4f05e370d6cb48409b6a30da1e3b628408870d71 100644 (file)
@@ -1,6 +1,6 @@
 #source: merge2.s
 #as: -x
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 
 #...
index d0163f3245857f06df09b406da9d6aaba8f7c972..985142dcba52eca45eb306d72627ac16d1e4b9c3 100644 (file)
@@ -1,6 +1,6 @@
 #source: merge3.s
 #as: -x
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 
 #...
index 0ed5621007d95b0b8c81ca39146bcf6f245a24cc..ba34c8cc372413f686cb9fb710077c8781e82106 100644 (file)
@@ -1,6 +1,6 @@
 #source: merge4.s
 #as: -x
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 
 #...
index 3adfa55ca137aa2953edf464c751be55fc1e0d38..d59fabc674c8bbca1beb14c2867282efe06d7296 100644 (file)
@@ -1,6 +1,6 @@
 #source: merge5.s
 #as: -x
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -d
 
 #...
index c14cd28469596e787710a7abcf4084f59fdd5197..a6a2c204e50586de7d33afd1d1c350bbd72ef75c 100644 (file)
@@ -1,4 +1,4 @@
-#ld: -shared -Map tmpdir/ifunc-1-local-x86.map
+#ld: -shared -Map tmpdir/ifunc-1-local-x86.map --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
 #map: ifunc-1-local-x86.map
index c245758e3e2e09bb73bee22483e85d6d620516d4..1471dfea1ffdf699133e34ef66770573739de187 100644 (file)
@@ -1,4 +1,4 @@
-#ld: -shared -Map tmpdir/ifunc-1-x86.map
+#ld: -shared -Map tmpdir/ifunc-1-x86.map --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
 #map: ifunc-1-x86.map
index ebe7ded5898b7709f9627294fb4d8005547e2745..b4dfcec338120da578d81adc5fd32f7a8a7a900a 100644 (file)
@@ -1,5 +1,5 @@
 #source: ifunc-2-i386.s
-#ld: -z now -m elf_i386 -shared
+#ld: -z now -m elf_i386 -shared --hash-style=sysv
 #as: --32
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
index 7cb2e54e6a0b463c8505b97160a1b8af92c19757..8888e7c682970029abf7cea3f4d47cdcac835bbc 100644 (file)
@@ -1,5 +1,5 @@
 #source: ifunc-2-local-i386.s
-#ld: -z now -m elf_i386 -shared
+#ld: -z now -m elf_i386 -shared --hash-style=sysv
 #as: --32
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
index 6ec199faaa48ddf2778bf6ec16b1b7a066e84f0f..d93709c06911e8a8169a93fb036424395d015dc5 100644 (file)
@@ -1,6 +1,6 @@
 #source: ifunc-2-local-x86-64.s
 #as: --64
-#ld: -z now -shared -melf_x86_64
+#ld: -z now -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 #notarget: x86_64-*-nacl*
index 317d7d75d76b426275e79fc45d9c45a68f398aef..b776b33907d3051a35737bb2aeb2ec39a0e3bc03 100644 (file)
@@ -1,5 +1,5 @@
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 
index 95920ccae26be7a5caa1bf12c4c550d56b8cd891..2328679f44f8b28bff6b21b54ff5c5a867d1f5f5 100644 (file)
@@ -1,6 +1,6 @@
 #source: ifunc-2-x86-64.s
 #as: --64
-#ld: -z now -shared -melf_x86_64
+#ld: -z now -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 #notarget: x86_64-*-nacl*
index 317d7d75d76b426275e79fc45d9c45a68f398aef..b776b33907d3051a35737bb2aeb2ec39a0e3bc03 100644 (file)
@@ -1,5 +1,5 @@
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 
index 4a88e4b93588dc6c861d5c07072a0ef21e15e159..3c2a9598c7b993b29bdf9675a488e4dbe29dd424 100644 (file)
@@ -1,5 +1,5 @@
 #source: ifunc-3-x86.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
 
index cb70b27852abe14fb3ac1fa4bb9112286631463e..b7afdd04d65fff2193c793ea8ca2054545e0d7f9 100644 (file)
@@ -1,5 +1,5 @@
 #source: pr17154-x86.s
-#ld: -z now -m elf_i386 -shared
+#ld: -z now -m elf_i386 -shared --hash-style=sysv
 #as: --32
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
index 16fcd4ef48f1855a5563d6544a6eb676f5836405..6b309b9f1e768e1d764ba98b14d49bd981eed945 100644 (file)
@@ -1,5 +1,5 @@
 #source: pr17154-x86.s
-#ld: -m elf_i386 -shared
+#ld: -m elf_i386 -shared --hash-style=sysv
 #as: --32
 #objdump: -dw
 #target: x86_64-*-* i?86-*-*
index f099575b181e4f0419632bea78e2aae978b95638..60edb9ebe8460c3c9159568c0589fcaf6337d4b8 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr17154-x86.s
 #as: --64
-#ld: -z now -shared -melf_x86_64
+#ld: -z now -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 #notarget: x86_64-*-nacl*
index 1cdcf503d371b662404965400bfe2ecfc88f8c35..b3d7ed0650cbff640d696820ccf71ebcd4156045 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr17154-x86.s
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-*
 
index e8070e92288ebbd0a6906c04d44ea8c645afaf84..1eddac4a7b6b29d65655d0f450bae120e5a5ecd9 100644 (file)
@@ -1,5 +1,5 @@
 #source: got-1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index 176961b098b2ffd5a59cb4cf6d0638ea047f05fb..13aeb057bc2b91ef3d1d921aa28f081779823bb4 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=multigot
+#ld: -shared --got=multigot --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index 7ebc58977925241140a6d2ec6a189973519b766c..86fe8f7bba350c8be4200b77e7bbcaf8b8d0f3b7 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=multigot
+#ld: -shared --got=multigot --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index 58381aec1047a5ce1c3f4f22e232390a97260a3f..892d0fe4a429e096474d1f4bbc86c2e73758816d 100644 (file)
@@ -1,3 +1,3 @@
 #as: -mcpu=5206
-#ld: -shared --got=multigot
+#ld: -shared --got=multigot --hash-style=sysv
 #error: .*GOT overflow.*
index 451df8052921ab42dfdbd4a895fccde498efc967..8c2ea9896126a3e3d03a08cea02f085ca3eba47d 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=negative
+#ld: -shared --got=negative --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index 4487a8cc9c0e77dbbfb88637a05dd6f435a52a9e..5930ae30c6e5d62606cbdb869543a7855e447b8f 100644 (file)
@@ -1,3 +1,3 @@
 #as: -mcpu=5206
-#ld: -shared --got=negative
+#ld: -shared --got=negative --hash-style=sysv
 #error: .*relocation truncated to fit.*
index 451df8052921ab42dfdbd4a895fccde498efc967..8c2ea9896126a3e3d03a08cea02f085ca3eba47d 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=negative
+#ld: -shared --got=negative --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index c1b740990fc68446d8a2838ab7b0f1d5919434cd..64bdd1eac95b56fbf29fa7f7069359942cb78a80 100644 (file)
@@ -1,3 +1,3 @@
 #as: -mcpu=5206
-#ld: -shared --got=negative
+#ld: -shared --got=negative --hash-style=sysv
 #error: .*GOT overflow.*
index a7fdeb9381ee25da49864db843f26fae1ca23c62..924a7d78e9e859aafe9d42bd130d8bb2e9b851c5 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=single
+#ld: -shared --got=single --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index bfca9f898331a6f273896c577339463095af9ee8..89e908ca2e6d0cfd978e65e08d0f40c7416f7340 100644 (file)
@@ -1,3 +1,3 @@
 #as: -mcpu=5206
-#ld: -shared --got=single
+#ld: -shared --got=single --hash-style=sysv
 #error: .*relocation truncated to fit.*
index dd2c21d5c0849a66b33dec4443366102bd76ddec..145be53da0d811810f04e7256ae9d94962bf0aab 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=multigot
+#ld: -shared --got=multigot --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index bc11849a3cac99c503185335a6c591bac7fe9977..1de632a53510dc9b45f9202f9508f211282bdc1b 100644 (file)
@@ -1,5 +1,5 @@
 #as: -mcpu=5206
-#ld: -shared --got=multigot
+#ld: -shared --got=multigot --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index c3a93bded9f035420a0096801f4bd59d7e45daf1..ed1321b2b90740b3d68f22efb61d2d65e82f75e4 100644 (file)
@@ -61,7 +61,8 @@ run_dump_test "merge-ok-1c"
 foreach { id sources } { a { plt1.s } b { plt1-empty.s plt1.s } } {
     foreach arch { 68020 cpu32 isab isac } {
        run_ld_link_tests [list \
-           [list "PLT 1$id ($arch)" "-shared -T plt1.ld" "" "-m$arch" \
+           [list "PLT 1$id ($arch)" \
+                "-shared -T plt1.ld --hash-style=sysv" "" "-m$arch" \
                 $sources [list [list objdump -dr plt1-$arch.d]] \
                 plt1-${id}-${arch}.so]]
     }
@@ -81,11 +82,11 @@ if { [istarget m68k-*-linux*] } then {
            {{nm -ngD tls-def-1.d}}
            "tls-def-1.so"}
        {"TLS direct symbol use"
-           "-shared tmpdir/tls-def-1.so" "" "" {tls-gd-1.s}
+           "-shared --hash-style=sysv tmpdir/tls-def-1.so" "" "" {tls-gd-1.s}
            {{nm -ngD tls-gd-1.d2} {readelf -d tls-gd-1.d3}}
            "tls-gd-1.so"}
        {"TLS indirect symbol use"
-           "--copy-dt-needed-entries tmpdir/tls-gd-1.so -rpath-link ./" "" "" {tls-main-1.s}
+           "--copy-dt-needed-entries --hash-style=sysv tmpdir/tls-gd-1.so -rpath-link ./" "" "" {tls-main-1.s}
            {{readelf -d tls-main-1.d}}
            "tls-main-1"}}
 
index 0cad6fc3281adf958952327f399be7acfce816dd..c8245f2ac994b591d4817cfa65232c9ce490d25e 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-gd-1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 9 entries:
index 28ba4f5a24419f8ab94a24a5c65b0ead32e93840..e382512cb7c3ba41aac0e266ef5d7ad6edbe176f 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-gd-2.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 10 entries:
index 46267228dc78ee5db601b5843fc74add0f424e55..9001cce7009f4f2f480b565fbd56d55ee746df41 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-gd-ie-1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 10 entries:
index 5574ad47fe81613613df68f337e0db75c64e86b1..0f21101928c3ad96559552623dc1d1e5f996d470 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-ie-1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 10 entries:
index 9f374f367321d86b0a010d291defdec3aafa7b99..b3ea123563bdfaedd44524ab0f0270c3916818ae 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-ld-1.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 10 entries:
index ee1bac580fc1144b88ab59881f585fb65de2d403..810160c34e65e9eda49b7acb7cf83ff46d95a804 100644 (file)
@@ -1,6 +1,6 @@
 #as: -mcpu=5206
 #source: tls-ld-2.s
-#ld: -shared
+#ld: -shared --hash-style=sysv
 #readelf: -d -r
 
 Dynamic section at offset .* contains 6 entries:
index 6147754bbf66cc68cf1f9953717b8d130cec590c..3504eb828903c90d7948cab50950cc469e428d48 100644 (file)
@@ -31,7 +31,7 @@ set metag_tests {
      { {objdump -Dz pcrel.d} }
      "pcrel"
     }
-    {"Simple PIC shared library" "-shared" "" ""
+    {"Simple PIC shared library" "-shared --hash-style=sysv" "" ""
      {shared.s}
      { {objdump -fdw shared.d} {objdump -Rw shared.r} }
      "shared.so"
@@ -41,17 +41,17 @@ set metag_tests {
      { {objdump -fdw stub.d} }
      "stub"
     }
-    {"Shared library for stub tests" "-shared" "" ""
+    {"Shared library for stub tests" "-shared --hash-style=sysv" "" ""
      {stub_shared.s}
      { {objdump -fdw stub_shared.d} {objdump -Rw stub_shared.r} }
      "stub_shared.so"
     }
-    {"Long branch stub (PIC, app)" "tmpdir/stub_shared.so" "" ""
+    {"Long branch stub (PIC, app)" "--hash-style=sysv tmpdir/stub_shared.so" "" ""
      {stub_pic_app.s}
      { {objdump -fdw stub_pic_app.d} {objdump -Rw stub_pic_app.r} }
      "stub_pic_app"
     }
-    {"Long branch stub (PIC, shared)" "-shared" "" ""
+    {"Long branch stub (PIC, shared)" "-shared --hash-style=sysv" "" ""
      {stub_pic_shared.s}
      { {objdump -fdw stub_pic_shared.d} }
      "stub_pic_shared.so"
index a74325a03a78cc73b5732c6abbaafee420bbd20b..dcff2d8c8298983525eb8507da6f1ef6f43a6cce 100644 (file)
@@ -18,7 +18,7 @@ Symbol table '\.dynsym' contains 5 entries:
      0: .*
      1: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
 #...
-Symbol table '\.symtab' contains 19 entries:
+Symbol table '\.symtab' contains .* entries:
 #...
-    14: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
+.*: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
 #pass
index 7b9753a2dff20e7e6e8288e608b47e1f8d9070ac..678b8ad84e4558845d53b69643945c79c1811c74 100644 (file)
@@ -14,11 +14,10 @@ Relocation section .* contains 1 entries:
 .* R_PPC64_COPY .* my_func \+ 0
 
 Symbol table '\.dynsym' contains 5 entries:
-.*
-     0: .*
-     1: 0+10010408     4 FUNC    GLOBAL DEFAULT   12 my_func
 #...
-Symbol table '\.symtab' contains 20 entries:
+.*: 0*[1-9a-f][0-9a-f]*     4 FUNC    GLOBAL DEFAULT   1[23] my_func
+#...
+Symbol table '\.symtab' contains .* entries:
 #...
-    15: 0+10010408     4 FUNC    GLOBAL DEFAULT   12 my_func
+.*: 0*[1-9a-f][0-9a-f]*     4 FUNC    GLOBAL DEFAULT   1[23] my_func
 #pass
index 99c8a39d1efcd9c661c009047ce43801f6620f6c..fec3a2ca5f6b98634ad90422a1c05f34bbaece30 100644 (file)
@@ -24,7 +24,7 @@ Symbol table '\.dynsym' contains 5 entries:
      1: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
 #...
 
-Symbol table '\.symtab' contains 21 entries:
+Symbol table '\.symtab' contains .* entries:
 #...
-    16: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
+.*: 0+00000000     0 FUNC    GLOBAL DEFAULT  UND my_func
 #pass
index 859a3ea94cd3e2c1c92da8dadd566cdcb50c7c34..c93cd119707c6d54df9cd7178335b3e51a1d9388 100644 (file)
@@ -15,11 +15,10 @@ Relocation section .* contains 1 entries:
 .* R_PPC64_JMP_SLOT .* my_func \+ 0
 
 Symbol table '\.dynsym' contains 5 entries:
-.*
-     0: .*
-     1: 0+100002b8     0 FUNC    GLOBAL DEFAULT  UND my_func
 #...
-Symbol table '\.symtab' contains 21 entries:
+.*: 0*[1-9a-f][0-9a-f]*     0 FUNC    GLOBAL DEFAULT  UND my_func
+#...
+Symbol table '\.symtab' contains .* entries:
 #...
-    16: 0+100002b8     0 FUNC    GLOBAL DEFAULT  UND my_func
+.*: 0*[1-9a-f][0-9a-f]*     0 FUNC    GLOBAL DEFAULT  UND my_func
 #pass
index f3962ac04134aa79e88a642bf88bfe8bee14d3cc..2c1fa3234bdc2f375a8fc42eb7cc1ed413dedc0b 100644 (file)
@@ -7,33 +7,33 @@
 
 Disassembly of section \.text:
 
-0+300 <.*\.plt_call\.f4>:
+.* <.*\.plt_call\.f4>:
 .*:    (f8 41 00 18|18 00 41 f8)       std     r2,24\(r1\)
 .*:    (e9 82 80 38|38 80 82 e9)       ld      r12,-32712\(r2\)
 .*:    (7d 89 03 a6|a6 03 89 7d)       mtctr   r12
 .*:    (4e 80 04 20|20 04 80 4e)       bctr
 
-0+310 <.*\.plt_call\.f3>:
+.* <.*\.plt_call\.f3>:
 .*:    (f8 41 00 18|18 00 41 f8)       std     r2,24\(r1\)
 .*:    (e9 82 80 28|28 80 82 e9)       ld      r12,-32728\(r2\)
 .*:    (7d 89 03 a6|a6 03 89 7d)       mtctr   r12
 .*:    (4e 80 04 20|20 04 80 4e)       bctr
 
-0+320 <.*\.plt_call\.f2>:
+.* <.*\.plt_call\.f2>:
 .*:    (f8 41 00 18|18 00 41 f8)       std     r2,24\(r1\)
 .*:    (e9 82 80 30|30 80 82 e9)       ld      r12,-32720\(r2\)
 .*:    (7d 89 03 a6|a6 03 89 7d)       mtctr   r12
 .*:    (4e 80 04 20|20 04 80 4e)       bctr
 
-0+330 <.*\.plt_call\.f1>:
+.* <.*\.plt_call\.f1>:
 .*:    (f8 41 00 18|18 00 41 f8)       std     r2,24\(r1\)
 .*:    (e9 82 80 40|40 80 82 e9)       ld      r12,-32704\(r2\)
 .*:    (7d 89 03 a6|a6 03 89 7d)       mtctr   r12
 .*:    (4e 80 04 20|20 04 80 4e)       bctr
 
-0+340 <f1>:
+.* <f1>:
 .*:    (3c 4c 00 02|02 00 4c 3c)       addis   r2,r12,2
-.*:    (38 42 82 c0|c0 82 42 38)       addi    r2,r2,-32064
+.*:    (38 42 .. ..|.. .. 42 38)       addi    r2,r2,.*
 .*:    (7c 08 02 a6|a6 02 08 7c)       mflr    r0
 .*:    (f8 21 ff e1|e1 ff 21 f8)       stdu    r1,-32\(r1\)
 .*:    (f8 01 00 30|30 00 01 f8)       std     r0,48\(r1\)
@@ -50,10 +50,10 @@ Disassembly of section \.text:
 .*:    (38 21 00 20|20 00 21 38)       addi    r1,r1,32
 .*:    (7c 08 03 a6|a6 03 08 7c)       mtlr    r0
 .*:    (4e 80 00 20|20 00 80 4e)       blr
-.*:    (00 00 00 00|80 02 01 00)       .*
-.*:    (00 01 02 80|00 00 00 00)       .*
+.*
+.*
 
-0+390 <__glink_PLTresolve>:
+.* <__glink_PLTresolve>:
 .*:    (7c 08 02 a6|a6 02 08 7c)       mflr    r0
 .*:    (42 9f 00 05|05 00 9f 42)       bcl     .*
 .*:    (7d 68 02 a6|a6 02 68 7d)       mflr    r11
index 6249ccbdb9f86edf360544ff3073b3c7dc6f0448..4405fa38c7e3c1928babad9bed0b38e98c377072 100644 (file)
@@ -29,33 +29,34 @@ if {[istarget "*-*-vxworks"]} {
         "-mregnames" {vxworks1-lib.s}
         {{readelf --segments vxworks1-lib.sd}}
         "libvxworks1.so"}
-       {"VxWorks shared library test 1" "-shared -Tvxworks1.ld" ""
+       {"VxWorks shared library test 1"
+        "-shared --hash-style=sysv -Tvxworks1.ld" ""
         "-mregnames" {vxworks1-lib.s}
         {{readelf --relocs vxworks1-lib.rd} {objdump -dr vxworks1-lib.dd}
          {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
         "libvxworks1.so"}
        {"VxWorks executable test 1 (dynamic)" \
-        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic" ""
+        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic --hash-style=sysv" ""
         "-mregnames" {vxworks1.s}
         {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1.dd}}
         "vxworks1"}
        {"VxWorks executable test 2 (dynamic)" \
-        "-Tvxworks1.ld -q --force-dynamic" ""
+        "-Tvxworks1.ld -q --force-dynamic --hash-style=sysv" ""
         "-mregnames" {vxworks2.s}
         {{readelf --segments vxworks2.sd}}
         "vxworks2"}
        {"VxWorks executable test 2 (static)"
-        "-Tvxworks1.ld" ""
+        "-Tvxworks1.ld --hash-style=sysv" ""
         "-mregnames" {vxworks2.s}
         {{readelf --segments vxworks2-static.sd}}
         "vxworks2"}
        {"VxWorks relax test"
-        "-Tvxworks1.ld --relax -q" ""
+        "-Tvxworks1.ld --relax -q --hash-style=sysv" ""
         "-mregnames" {vxworks-relax.s}
         {{readelf --relocs vxworks-relax.rd}}
         "vxworks-relax"}
        {"VxWorks relocatable relax test"
-        "-Tvxworks1.ld -r --relax -q" ""
+        "-Tvxworks1.ld -r --relax -q --hash-style=sysv" ""
         "-mregnames" {vxworks-relax-2.s}
         {{readelf --relocs vxworks-relax-2.rd}}
         "vxworks-relax-2"}
@@ -115,11 +116,11 @@ set ppcelftests {
      "tls32"}
     {"TLS32 helper shared library" "-shared -melf32ppc tmpdir/tlslib32.o" "" "" {}
      {} "libtlslib32.so"}
-    {"TLS32 dynamic exec" "-melf32ppc --no-ld-generated-unwind-info tmpdir/tls32.o tmpdir/libtlslib32.so" "" "" {}
+    {"TLS32 dynamic exec" "-melf32ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls32.o tmpdir/libtlslib32.so" "" "" {}
      {{readelf -WSsrl tlsexe32.r} {objdump -dr tlsexe32.d}
       {objdump -sj.got tlsexe32.g} {objdump -sj.tdata tlsexe32.t}}
       "tlsexe32"}
-    {"TLS32 shared" "-shared -melf32ppc --no-ld-generated-unwind-info tmpdir/tls32.o" "" "" {}
+    {"TLS32 shared" "-shared -melf32ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls32.o" "" "" {}
      {{readelf -WSsrl tlsso32.r} {objdump -dr tlsso32.d}
       {objdump -sj.got tlsso32.g} {objdump -sj.tdata tlsso32.t}}
       "tls32.so"}
@@ -163,15 +164,15 @@ set ppc64elftests {
      {} "libtlslib.so"}
     {"TLS helper old shared lib" "-shared -melf64ppc" "" "-a64" {oldtlslib.s}
      {} "liboldlib.so"}
-    {"TLS dynamic exec" "-melf64ppc --no-ld-generated-unwind-info tmpdir/tls.o tmpdir/libtlslib.so" "" "" {}
+    {"TLS dynamic exec" "-melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls.o tmpdir/libtlslib.so" "" "" {}
      {{readelf -WSsrl tlsexe.r} {objdump -dr tlsexe.d}
       {objdump -sj.got tlsexe.g} {objdump -sj.tdata tlsexe.t}}
       "tlsexe"}
-    {"TLS dynamic old" "-melf64ppc --no-ld-generated-unwind-info tmpdir/tls.o tmpdir/liboldlib.so" "" "" {}
+    {"TLS dynamic old" "-melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls.o tmpdir/liboldlib.so" "" "" {}
      {{readelf -WSsrl tlsexe.r} {objdump -dr tlsexe.d}
       {objdump -sj.got tlsexe.g} {objdump -sj.tdata tlsexe.t}}
       "tlsexeold"}
-    {"TLS shared" "-shared -melf64ppc --no-ld-generated-unwind-info tmpdir/tls.o" "" "" {}
+    {"TLS shared" "-shared -melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tls.o" "" "" {}
      {{readelf -WSsrl tlsso.r} {objdump -dr tlsso.d}
       {objdump -sj.got tlsso.g} {objdump -sj.tdata tlsso.t}}
       "tls.so"}
@@ -179,17 +180,17 @@ set ppc64elftests {
      {{objdump -dr tlstoc.d} {objdump -sj.got tlstoc.g}
       {objdump -sj.tdata tlstoc.t}}
       "tlstoc"}
-    {"TLSTOC dynamic exec" "-melf64ppc --no-ld-generated-unwind-info tmpdir/tlstoc.o tmpdir/libtlslib.so" ""
+    {"TLSTOC dynamic exec" "-melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tlstoc.o tmpdir/libtlslib.so" ""
      "" {}
      {{readelf -WSsrl tlsexetoc.r} {objdump -dr tlsexetoc.d}
       {objdump -sj.got tlsexetoc.g} {objdump -sj.tdata tlsexetoc.t}}
       "tlsexetoc"}
-    {"TLSTOC dynamic old" "-melf64ppc --no-ld-generated-unwind-info tmpdir/tlstoc.o tmpdir/liboldlib.so" ""
+    {"TLSTOC dynamic old" "-melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tlstoc.o tmpdir/liboldlib.so" ""
      "" {}
      {{readelf -WSsrl tlsexetoc.r} {objdump -dr tlsexetoc.d}
       {objdump -sj.got tlsexetoc.g} {objdump -sj.tdata tlsexetoc.t}}
       "tlsexetocold"}
-    {"TLSTOC shared" "-shared -melf64ppc --no-ld-generated-unwind-info tmpdir/tlstoc.o" "" "" {}
+    {"TLSTOC shared" "-shared -melf64ppc --no-ld-generated-unwind-info --hash-style=sysv tmpdir/tlstoc.o" "" "" {}
      {{readelf -WSsrl tlstocso.r} {objdump -dr tlstocso.d}
       {objdump -sj.got tlstocso.g} {objdump -sj.tdata tlstocso.t}}
       "tlstoc.so"}
index 3c8518503c468f2ab92216b3b26e7bee05de7bfe..4521a9b427fdeee4c2982e3a101ef51072437396 100644 (file)
@@ -8,7 +8,7 @@
 
 Disassembly of section \.text:
 
-0+2c0 <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>:
+.* <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>:
 .*:    (00 00 63 e9|e9 63 00 00)       ld      r11,0\(r3\)
 .*:    (08 00 83 e9|e9 83 00 08)       ld      r12,8\(r3\)
 .*:    (78 1b 60 7c|7c 60 1b 78)       mr      r0,r3
@@ -27,14 +27,14 @@ Disassembly of section \.text:
 .*:    (a6 03 68 7d|7d 68 03 a6)       mtlr    r11
 .*:    (20 00 80 4e|4e 80 00 20)       blr
 
-0+304 <_start>:
+.* <_start>:
 .*:    (08 80 62 38|38 62 80 08)       addi    r3,r2,-32760
 .*:    (b9 ff ff 4b|4b ff ff b9)       bl      .*
 .*:    (00 00 00 60|60 00 00 00)       nop
-.*:    (f8 02 01 00|00 00 00 00)       .*
-.*:    (00 00 00 00|00 01 02 f8)       .*
+.*
+.*
 
-0+318 <__glink_PLTresolve>:
+.* <__glink_PLTresolve>:
 .*:    (a6 02 08 7c|7c 08 02 a6)       mflr    r0
 .*:    (05 00 9f 42|42 9f 00 05)       bcl     .*
 .*:    (a6 02 68 7d|7d 68 02 a6)       mflr    r11
@@ -50,5 +50,5 @@ Disassembly of section \.text:
 .*:    (08 00 6b e9|e9 6b 00 08)       ld      r11,8\(r11\)
 .*:    (20 04 80 4e|4e 80 04 20)       bctr
 
-0+350 <__tls_get_addr_opt@plt>:
+.* <__tls_get_addr_opt@plt>:
 .*:    (c8 ff ff 4b|4b ff ff c8)       b       .*
index 05ef7e058e6c140d1bd4790d2d2fc43c4e0328cf..158f6500397b3e7ccd74f2ffdbb7811b143f793e 100644 (file)
@@ -10,23 +10,23 @@ Contents of the \.eh_frame section:
 
   DW_CFA_def_cfa: r1 ofs 0
 
-0+14 0+14 0+18 FDE cie=0+ pc=0+2c0\.\.0+304
-  DW_CFA_advance_loc: 48 to 0+2f0
+0+14 0+14 0+18 FDE cie=0+ pc=.*
+  DW_CFA_advance_loc: 48 to .*
   DW_CFA_offset_extended_sf: r65 at cfa\+8
-  DW_CFA_advance_loc: 16 to 0+300
+  DW_CFA_advance_loc: 16 to .*
   DW_CFA_restore_extended: r65
 
-0+2c 0+18 0+30 FDE cie=0+ pc=0+318\.\.0+354
-  DW_CFA_advance_loc: 4 to 0+31c
+0+2c 0+18 0+30 FDE cie=0+ pc=.*
+  DW_CFA_advance_loc: 4 to .*
   DW_CFA_register: r65 in r0
-  DW_CFA_advance_loc: 28 to 0+338
+  DW_CFA_advance_loc: 28 to .*
   DW_CFA_restore_extended: r65
   DW_CFA_nop
   DW_CFA_nop
   DW_CFA_nop
   DW_CFA_nop
 
-0+48 0+10 0+4c FDE cie=0+ pc=0+304\.\.0+310
+0+48 0+10 0+4c FDE cie=0+ pc=.*
   DW_CFA_nop
   DW_CFA_nop
   DW_CFA_nop
index 64acf1029ad53f079b9edbb1fb91a61b28b58a17..4f1bf06dd3dabe4807b1856b580837376b8f19c5 100644 (file)
@@ -8,7 +8,7 @@
 
 Disassembly of section \.text:
 
-0+200 <_start>:
+.* <_start>:
 .*:    (f0 ff 21 94|94 21 ff f0)       stwu    r1,-16\(r1\)
 .*:    (a6 02 08 7c|7c 08 02 a6)       mflr    r0
 .*:    (05 00 9f 42|42 9f 00 05)       bcl     .*
@@ -16,9 +16,9 @@ Disassembly of section \.text:
 .*:    (a6 02 c8 7f|7f c8 02 a6)       mflr    r30
 .*:    (01 00 de 3f|3f de 00 01)       addis   r30,r30,1
 .*:    (14 00 01 90|90 01 00 14)       stw     r0,20\(r1\)
-.*:    (7c 01 de 3b|3b de 01 7c)       addi    r30,r30,380
+.*:    (.. .. de 3b|3b de .. ..)       addi    r30,r30,.*
 .*:    (f8 ff 7e 38|38 7e ff f8)       addi    r3,r30,-8
-.*:    (1d 00 00 48|48 00 00 1d)       bl      240 <.*__tls_get_addr_opt.*>
+.*:    (1d 00 00 48|48 00 00 1d)       bl      .* <.*__tls_get_addr_opt.*>
 .*:    (14 00 01 80|80 01 00 14)       lwz     r0,20\(r1\)
 .*:    (08 00 c1 83|83 c1 00 08)       lwz     r30,8\(r1\)
 .*:    (a6 03 08 7c|7c 08 03 a6)       mtlr    r0
@@ -26,7 +26,7 @@ Disassembly of section \.text:
 .*:    (20 00 80 4e|4e 80 00 20)       blr
 .*
 
-0+240 <.*__tls_get_addr_opt.*>:
+.* <.*__tls_get_addr_opt.*>:
 .*:    (00 00 63 81|81 63 00 00)       lwz     r11,0\(r3\)
 .*:    (04 00 83 81|81 83 00 04)       lwz     r12,4\(r3\)
 .*:    (78 1b 60 7c|7c 60 1b 78)       mr      r0,r3
@@ -40,13 +40,13 @@ Disassembly of section \.text:
 .*:    (20 04 80 4e|4e 80 04 20)       bctr
 .*:    (00 00 00 60|60 00 00 00)       nop
 
-0+270 <__glink>:
+.* <__glink>:
 .*:    (00 00 00 60|60 00 00 00)       nop
 .*:    (00 00 00 60|60 00 00 00)       nop
 .*:    (00 00 00 60|60 00 00 00)       nop
 .*:    (00 00 00 60|60 00 00 00)       nop
 
-0+280 <__glink_PLTresolve>:
+.* <__glink_PLTresolve>:
 .*:    (00 00 6b 3d|3d 6b 00 00)       addis   r11,r11,0
 .*:    (a6 02 08 7c|7c 08 02 a6)       mflr    r0
 .*:    (05 00 9f 42|42 9f 00 05)       bcl     .*
@@ -55,8 +55,8 @@ Disassembly of section \.text:
 .*:    (a6 03 08 7c|7c 08 03 a6)       mtlr    r0
 .*:    (50 58 6c 7d|7d 6c 58 50)       subf    r11,r12,r11
 .*:    (01 00 8c 3d|3d 8c 00 01)       addis   r12,r12,1
-.*:    (00 01 0c 80|80 0c 01 00)       lwz     r0,256\(r12\)
-.*:    (04 01 8c 81|81 8c 01 04)       lwz     r12,260\(r12\)
+.*:    (.. .. 0c 80|80 0c .. ..)       lwz     r0,.*\(r12\)
+.*:    (.. .. 8c 81|81 8c .. ..)       lwz     r12,.*\(r12\)
 .*:    (a6 03 09 7c|7c 09 03 a6)       mtctr   r0
 .*:    (14 5a 0b 7c|7c 0b 5a 14)       add     r0,r11,r11
 .*:    (14 5a 60 7d|7d 60 5a 14)       add     r11,r0,r11
index 9a375b72d6aadd0767358afa711e29feb369db12..e1796fad58048097814b9b7f52ae87caa178728d 100644 (file)
@@ -36,7 +36,7 @@ if { !([istarget "s390-*-*"] || [istarget "s390x-*-*"]) } {
 # readelf: Apply readelf options on result.  Compare with regex (last arg).
 
 set s390tests {
-    {"TLS -fpic -shared transitions" "-shared -melf_s390" ""
+    {"TLS -fpic -shared transitions" "-shared -melf_s390 --hash-style=sysv" ""
      "-m31" {tlspic1.s tlspic2.s}
      {{readelf -Ssrl tlspic.rd} {objdump -dzrj.text tlspic.dd}
       {objdump -sj.got tlspic.sd} {objdump -sj.tdata tlspic.td}}
@@ -44,19 +44,20 @@ set s390tests {
     {"Helper shared library" "-shared -melf_s390" ""
      "-m31" {tlslib.s} {} "libtlslib.so"}
     {"TLS -fpic and -fno-pic exec transitions"
-     "-melf_s390 tmpdir/libtlslib.so" "" "-m31" {tlsbinpic.s tlsbin.s}
+     "-melf_s390 tmpdir/libtlslib.so --hash-style=sysv" ""
+     "-m31" {tlsbinpic.s tlsbin.s}
      {{readelf -Ssrl tlsbin.rd} {objdump -dzrj.text tlsbin.dd}
       {objdump -sj.got tlsbin.sd} {objdump -sj.tdata tlsbin.td}}
      "tlsbin"}
     {"GOT: symbol address load from got to larl"
-     "-shared -melf_s390 --version-script=gotreloc-1.ver" ""
+     "-shared -melf_s390 --hash-style=sysv --version-script=gotreloc-1.ver" ""
      "-m31" {gotreloc-1.s}
      {{objdump -dzrj.text gotreloc_31-1.dd}}
      "gotreloc_31-1"}
 }
 
 set s390xtests {
-    {"TLS -fpic -shared transitions" "-shared -melf64_s390" ""
+    {"TLS -fpic -shared transitions" "-shared -melf64_s390 --hash-style=sysv" ""
      "-m64 -Aesame" {tlspic1_64.s tlspic2_64.s}
      {{readelf -WSsrl tlspic_64.rd} {objdump -dzrj.text tlspic_64.dd}
       {objdump -sj.got tlspic_64.sd} {objdump -sj.tdata tlspic_64.td}}
@@ -64,13 +65,13 @@ set s390xtests {
     {"Helper shared library" "-shared -melf64_s390" ""
      "-m64 -Aesame" {tlslib_64.s} {} "libtlslib_64.so"}
     {"TLS -fpic and -fno-pic exec transitions"
-     "-melf64_s390 tmpdir/libtlslib_64.so" "" "-m64 -Aesame"
-     {tlsbinpic_64.s tlsbin_64.s}
+     "-melf64_s390 tmpdir/libtlslib_64.so --hash-style=sysv" ""
+     "-m64 -Aesame" {tlsbinpic_64.s tlsbin_64.s}
      {{readelf -WSsrl tlsbin_64.rd} {objdump -dzrj.text tlsbin_64.dd}
       {objdump -sj.got tlsbin_64.sd} {objdump -sj.tdata tlsbin_64.td}}
      "tlsbin_64"}
     {"GOT: symbol address load from got to larl"
-     "-shared -melf64_s390 --version-script=gotreloc-1.ver" ""
+     "-shared -melf64_s390 --hash-style=sysv --version-script=gotreloc-1.ver" ""
      "-m64" {gotreloc-1.s}
      {{objdump -dzrj.text gotreloc_64-1.dd}}
      "gotreloc_64-1"}
index c20e4730f3033e62c5b5bc980239b19a687ab812..0667f2528c92c5585670b0f8eb2f345d8a73cf82 100644 (file)
@@ -4,6 +4,7 @@ SECTIONS
   .dynsym : { *(.dynsym) }
   .dynstr : { *(.dynstr) }
   .hash : { *(.hash) }
+  .gnu.hash : { *(.gnu.hash) }
   .toc  : { *(.toc) }
   .text : { tmpdir/cross1.o }
   .data : { tmpdir/cross2.o }
index 2a6b89d0a7d8de052e41f7059523f141bcf610c3..297abeccca074b35b54d96513e3f89ebe2b82df4 100644 (file)
@@ -26,33 +26,35 @@ set endians { "--big" "-EB" "" "--little" "-EL" "-le" }
 
 foreach { gas_option ld_option suffix } $endians {
     set vxworkstests {
-       {"VxWorks shared library test 1" "-shared -Tvxworks1.ld $ld_option" ""
+       {"VxWorks shared library test 1"
+        "-shared -Tvxworks1.ld --hash-style=sysv $ld_option" ""
         "$gas_option" {vxworks1-lib.s}
         {{readelf --relocs vxworks1-lib.rd}
          {objdump -dr vxworks1-lib$suffix.dd}
          {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
         "libvxworks1.so"}
        {"VxWorks executable test 1 (dynamic)" \
-        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic $ld_option" ""
+        "tmpdir/libvxworks1.so -Tvxworks1.ld --hash-style=sysv -q --force-dynamic $ld_option" ""
         "$gas_option" {vxworks1.s}
         {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1$suffix.dd}}
         "vxworks1"}
        {"VxWorks executable test 2 (dynamic)" \
-        "-Tvxworks1.ld -q --force-dynamic $ld_option" ""
+        "-Tvxworks1.ld --hash-style=sysv -q --force-dynamic $ld_option" ""
         "$gas_option" {vxworks2.s}
         {{readelf --segments vxworks2.sd}}
         "vxworks2"}
        {"VxWorks executable test 2 (static)"
-        "-Tvxworks1.ld $ld_option" ""
+        "-Tvxworks1.ld --hash-style=sysv $ld_option" ""
         "$gas_option" {vxworks2.s}
         {{readelf --segments vxworks2-static.sd}}
         "vxworks2"}
-       {"VxWorks shared library test 3" "-shared -Tvxworks1.ld $ld_option" ""
+       {"VxWorks shared library test 3"
+        "-shared -Tvxworks1.ld --hash-style=sysv $ld_option" ""
         "$gas_option" {vxworks3-lib.s}
            {{objdump -dr vxworks3-lib$suffix.dd}}
         "libvxworks3.so"}
        {"VxWorks executable test 3 (dynamic)" \
-        "tmpdir/libvxworks3.so -Tvxworks1.ld -q --force-dynamic $ld_option" ""
+        "tmpdir/libvxworks3.so -Tvxworks1.ld --hash-style=sysv -q --force-dynamic $ld_option" ""
         "$gas_option" {vxworks3.s}
         {{objdump -d vxworks3$suffix.dd}}
         "vxworks3"}
index e65fea40c36f8c67877b1d42c2583290531f64e4..26d2887b965028be8b767e7d5eb5d1de2700fa57 100644 (file)
@@ -1,7 +1,7 @@
 #source: textrel1.s
 #source: textrel2.s
 #as: -little
-#ld: -shared -EL
+#ld: -shared -EL --hash-style=sysv
 #readelf: -d
 #target: sh*-*-elf sh*-*-linux* sh*-*-netbsd*
 
index 6958e45bbbe440ed12bcff6f495ab5682345ef39..9f18e1d3dde63e85e9db44433afb3e0a089dd7bb 100644 (file)
@@ -1,7 +1,7 @@
 #source: tlsbinpic.s
 #source: tlsbin.s
 #as: -little
-#ld: -EL tmpdir/tlsbin-0-dso.so
+#ld: -EL --hash-style=sysv tmpdir/tlsbin-0-dso.so
 #readelf: -Ssrl
 #target: sh*-*-linux* sh*-*-netbsd*
 
index 42baf1dfd53753c2ad1e85aa294091744f34ae95..a7d83c007037c12f55d4887bea2c92e400dc6ac0 100644 (file)
@@ -1,7 +1,7 @@
 #source: tlspic1.s
 #source: tlspic2.s
 #as: -little
-#ld: -shared -EL
+#ld: -shared -EL --hash-style=sysv
 #readelf: -Ssrl
 #target: sh*-*-linux* sh*-*-netbsd*
 
index 723b51cddf4cd085bfe1ecd86fdb22bb609faeff..6d7a0d6c92291c65a17df6945468412a3ba040a3 100644 (file)
@@ -282,7 +282,7 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o]
        setup_xfail "aarch64*-*-linux*"
        shared_test shnp "shared (non PIC, load offset)" \
                mainnp.o sh1np.o sh2np.o shared \
-               "-T $srcdir/$subdir/elf-offset.ld"
+               "-Wl,-T,$srcdir/$subdir/elf-offset.ld,--hash-style=sysv"
     } }
 
     # Now compile the code using -fpic.
index 77829001e85589575d61c195ad7ebdaa3587b71e..3828418233785fba0e39c074947401accc83fe12 100644 (file)
 
 if {[istarget "sparc-*-vxworks"]} {
     set sparcvxworkstests {
-       {"VxWorks shared library test 1" "-shared -Tvxworks1.ld" ""
+       {"VxWorks shared library test 1"
+        "-shared -Tvxworks1.ld --hash-style=sysv" ""
         "-KPIC" {vxworks1-lib.s}
         {{readelf --relocs vxworks1-lib.rd} {objdump -dr vxworks1-lib.dd}
          {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
         "libvxworks1.so"}
        {"VxWorks executable test 1 (dynamic)" \
-        "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic" ""
+        "tmpdir/libvxworks1.so -Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks1.s}
         {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1.dd}}
         "vxworks1"}
        {"VxWorks executable test 2 (dynamic)" \
-        "-Tvxworks1.ld -q --force-dynamic" ""
+        "-Tvxworks1.ld --hash-style=sysv -q --force-dynamic" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2.sd}}
         "vxworks2"}
        {"VxWorks executable test 2 (static)"
-        "-Tvxworks1.ld" ""
+        "-Tvxworks1.ld --hash-style=sysv" ""
         "" {vxworks2.s}
         {{readelf --segments vxworks2-static.sd}}
         "vxworks2"}
@@ -67,7 +68,8 @@ if { !([istarget "sparc*-*-elf*"]
 # readelf: Apply readelf options on result.  Compare with regex (last arg).
 
 set sparctests {
-    {"32-bit: TLS -fpic -shared transitions" "-shared -melf32_sparc" ""
+    {"32-bit: TLS -fpic -shared transitions"
+     "-shared -melf32_sparc --hash-style=sysv" ""
      "--32 -K PIC" {tlssunpic32.s tlspic.s}
      {{readelf -WSsrl tlssunpic32.rd} {objdump -drj.text tlssunpic32.dd}
       {objdump -sj.got tlssunpic32.sd} {objdump -sj.tdata tlssunpic32.td}}
@@ -77,19 +79,21 @@ set sparctests {
     {"32-bit: Another helper shared library" "-shared -melf32_sparc" ""
      "--32 -K PIC" {tlssunbinpic32.s} {} "libtlssunbinpic32.so"}
     {"32-bit: TLS -fpic and -fno-pic exec transitions"
-     "-melf32_sparc tmpdir/libtlslib32.so tmpdir/tlssunbinpic32.o" ""
+     "-melf32_sparc --hash-style=sysv tmpdir/libtlslib32.so tmpdir/tlssunbinpic32.o" ""
      "--32" {tlssunbin32.s}
      {{readelf -WSsrl tlssunbin32.rd} {objdump -drj.text tlssunbin32.dd}
       {objdump -sj.got tlssunbin32.sd} {objdump -sj.tdata tlssunbin32.td}}
       "tlssunbin32"}
-    {"32-bit: TLS -fno-pic -shared" "-shared -melf32_sparc" ""
+    {"32-bit: TLS -fno-pic -shared"
+     "-shared -melf32_sparc --hash-style=sysv" ""
      "--32" {tlssunnopic32.s tlsnopic.s}
      {{readelf -WSsrl tlssunnopic32.rd} {objdump -drj.text tlssunnopic32.dd}
       {objdump -sj.got tlssunnopic32.sd}} "libtlssunnopic32.so"}
     {"32-bit: TLS in debug sections" "-melf32_sparc" ""
      "--32" {tlsg32.s}
      {{objdump -sj.debug_foobar tlsg32.sd}} "tlsg32"}
-    {"32-bit: GOTDATA relocations" "-shared -melf32_sparc" ""
+    {"32-bit: GOTDATA relocations"
+     "-shared -melf32_sparc --hash-style=sysv" ""
      "--32 -K PIC" {gotop32.s}
      {{readelf -WSsrl gotop32.rd} {objdump -drj.text gotop32.dd}
       {objdump -sj.got gotop32.sd} {objdump -sj.data gotop32.td}}
@@ -99,7 +103,8 @@ set sparctests {
      {{objdump -dj.wdispcall wdispcall.dd}} "wdispcall"}
 }
 set sparc64tests {
-    {"64-bit: TLS -fpic -shared transitions" "-shared -melf64_sparc" ""
+    {"64-bit: TLS -fpic -shared transitions"
+     "-shared -melf64_sparc --hash-style=sysv" ""
      "--64 -Av9 -K PIC" {tlssunpic64.s tlspic.s}
      {{readelf -WSsrl tlssunpic64.rd} {objdump -drj.text tlssunpic64.dd}
       {objdump -sj.got tlssunpic64.sd} {objdump -sj.tdata tlssunpic64.td}}
@@ -109,19 +114,21 @@ set sparc64tests {
     {"64-bit: Another helper shared library" "-shared -melf64_sparc" ""
      "--64 -Av9 -K PIC" {tlssunbinpic64.s} {} "libtlssunbinpic64.so"}
     {"64-bit: TLS -fpic and -fno-pic exec transitions"
-     "-melf64_sparc tmpdir/libtlslib64.so tmpdir/tlssunbinpic64.o" ""
+     "-melf64_sparc --hash-style=sysv tmpdir/libtlslib64.so tmpdir/tlssunbinpic64.o" ""
      "--64 -Av9" {tlssunbin64.s}
      {{readelf -WSsrl tlssunbin64.rd} {objdump -drj.text tlssunbin64.dd}
       {objdump -sj.got tlssunbin64.sd} {objdump -sj.tdata tlssunbin64.td}}
       "tlssunbin64"}
-    {"64-bit: TLS -fno-pic -shared" "-shared -melf64_sparc" ""
+    {"64-bit: TLS -fno-pic -shared"
+     "-shared -melf64_sparc --hash-style=sysv" ""
      "--64 -Av9" {tlssunnopic64.s tlsnopic.s}
      {{readelf -WSsrl tlssunnopic64.rd} {objdump -drj.text tlssunnopic64.dd}
       {objdump -sj.got tlssunnopic64.sd}} "libtlssunnopic64.so"}
     {"64-bit: TLS in debug sections" "-melf64_sparc" ""
      "--64 -Av9" {tlsg64.s}
      {{objdump -sj.debug_foobar tlsg64.sd}} "tlsg64"}
-    {"64-bit: GOTDATA relocations" "-shared -melf64_sparc" ""
+    {"64-bit: GOTDATA relocations"
+     "-shared -melf64_sparc --hash-style=sysv" ""
      "--64 -K PIC" {gotop64.s}
      {{readelf -WSsrl gotop64.rd} {objdump -drj.text gotop64.dd}
       {objdump -sj.got gotop64.sd} {objdump -sj.data gotop64.td}}
index c1b06083a3f0009444e162bb170d4eda139f8e03..943fc5ac6dc0085ca59a29010602845688292940 100644 (file)
@@ -31,21 +31,21 @@ foreach test [lsort [glob -nocomplain $srcdir/$subdir/*.d]] {
 
 set shlibtests {
     {"C6X shared library without --dsbt-index"
-     "-shared  -Tdsbt.ld --dsbt-size=3" ""
+     "-shared  -Tdsbt.ld --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s}
      {{readelf -WSsrld shlib-noindex.rd}
       {objdump "-drj.plt -j.text" shlib-noindex.dd}
       {objdump -sj.got shlib-noindex.sd}}
       "libtestn.so"}
     {"C6X shared library, LE, RELA"
-     "-shared  -Tdsbt.ld --dsbt-index=2 --dsbt-size=3" ""
+     "-shared  -Tdsbt.ld --dsbt-index=2 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s}
      {{readelf -WSsrld shlib-1.rd}
       {objdump "-drj.plt -j.text" shlib-1.dd}
       {objdump -sj.got shlib-1.sd}}
       "libtest.so"}
     {"C6X nonstatic app using shared library, LE, RELA"
-     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtest.so" ""
+     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtest.so --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near" {shlib-app-1.s}
      {{readelf -WSsrld shlib-app-1.rd}
       {objdump "-drj.plt -j.text" shlib-app-1.dd}
@@ -53,14 +53,14 @@ set shlibtests {
       {objdump -R shlib-app-1.od}}
      "shlib-dynapp-1"}
     {"C6X shared library, LE, REL"
-     "-shared  -Tdsbt.ld --dsbt-index=2 --dsbt-size=3" ""
+     "-shared  -Tdsbt.ld --dsbt-index=2 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-1.s shlib-2.s}
      {{readelf -WSsrld shlib-1r.rd}
       {objdump "-drj.plt -j.text" shlib-1r.dd}
       {objdump -sj.got shlib-1r.sd}}
       "libtestr.so"}
     {"C6X nonstatic app using shared library, LE, REL"
-     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestr.so" ""
+     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv tmpdir/libtestr.so" ""
      "-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-app-1r.s}
      {{readelf -WSsrld shlib-app-1r.rd}
       {objdump "-drj.plt -j.text" shlib-app-1r.dd}
@@ -68,14 +68,14 @@ set shlibtests {
       {objdump -R shlib-app-1r.od}}
      "shlib-dynapp-1r"}
     {"C6X shared library, BE, RELA"
-     "-shared  -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3" ""
+     "-shared  -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mbig-endian" {shlib-1.s shlib-2.s}
      {{readelf -WSsrld shlib-1b.rd}
       {objdump "-drj.plt -j.text" shlib-1b.dd}
       {objdump -sj.got shlib-1b.sd}}
       "libtestb.so"}
     {"C6X nonstatic app using shared library, BE, RELA"
-     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestb.so" ""
+     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv tmpdir/libtestb.so" ""
      "-mdsbt -mpic -mpid=near -mbig-endian" {shlib-app-1.s}
      {{readelf -WSsrld shlib-app-1b.rd}
       {objdump "-drj.plt -j.text" shlib-app-1b.dd}
@@ -83,14 +83,14 @@ set shlibtests {
       {objdump -R shlib-app-1b.od}}
      "shlib-dynapp-1b"}
     {"C6X shared library, BE, REL"
-     "-shared  -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3" ""
+     "-shared  -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mgenerate-rel -mbig-endian" {shlib-1.s shlib-2.s}
      {{readelf -WSsrld shlib-1rb.rd}
       {objdump "-drj.plt -j.text" shlib-1rb.dd}
       {objdump -sj.got shlib-1rb.sd}}
       "libtestrb.so"}
     {"C6X nonstatic app using shared library, BE, REL"
-     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestrb.so" ""
+     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv tmpdir/libtestrb.so" ""
      "-mdsbt -mpic -mpid=near -mgenerate-rel -mbig-endian" {shlib-app-1r.s}
      {{readelf -WSsrld shlib-app-1rb.rd}
       {objdump "-drj.plt -j.text" shlib-app-1rb.dd}
@@ -99,7 +99,7 @@ set shlibtests {
      "shlib-dynapp-1rb"}
 
     {"C6X static app, LE, RELA"
-     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3" ""
+     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s shlib-app-1.s}
      {{readelf -WSsrld static-app-1.rd}
       {objdump "-drj.plt -j.text" static-app-1.dd}
@@ -107,7 +107,7 @@ set shlibtests {
       {objdump -R static-app-1.od}}
      "static-app-1"}
     {"C6X static app, LE, REL"
-     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3" ""
+     "-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-1.s shlib-2.s shlib-app-1r.s}
      {{readelf -WSsrld static-app-1r.rd}
       {objdump "-drj.plt -j.text" static-app-1r.dd}
@@ -115,7 +115,7 @@ set shlibtests {
       {objdump -R static-app-1r.od}}
      "static-app-1r"}
     {"C6X static app, BE, RELA"
-     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3" ""
+     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mbig-endian" {shlib-1.s shlib-2.s shlib-app-1.s}
      {{readelf -WSsrld static-app-1b.rd}
       {objdump "-drj.plt -j.text" static-app-1b.dd}
@@ -123,7 +123,7 @@ set shlibtests {
       {objdump -R static-app-1b.od}}
      "static-app-1b"}
     {"C6X static app, BE, REL"
-     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3" ""
+     "-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 --hash-style=sysv" ""
      "-mdsbt -mpic -mpid=near -mbig-endian -mgenerate-rel" {shlib-1.s shlib-2.s shlib-app-1r.s}
      {{readelf -WSsrld static-app-1rb.rd}
       {objdump "-drj.plt -j.text" static-app-1rb.dd}
index f70c712936166b62c38425545b0f04c80b20758d..0f58af8501da3a0aad8c8202dbb96c29d1fd0f18 100644 (file)
@@ -25,7 +25,7 @@ if { ![istarget vax-*-*] || ![is_elf_format] } {
 
 run_ld_link_tests [list \
     [list "PLT test (shared library)" \
-         "-shared -T plt-local-lib.ld" "" \
+         "-shared -T plt-local-lib.ld --hash-style=sysv" "" \
          "-k" \
          { plt-local-lib.s } \
          { { objdump -d plt-local-lib.dd } } \
@@ -43,7 +43,7 @@ run_ld_link_tests [list \
          {} \
          "plt-local-rehidden-pic-r.o"] \
     [list "PLT test (executable)" \
-         "-T plt-local.ld tmpdir/plt-local-hidden-pic-r.o tmpdir/plt-local-rehidden-pic-r.o tmpdir/plt-local-lib.so" "" \
+         "-T plt-local.ld --hash-style=sysv tmpdir/plt-local-hidden-pic-r.o tmpdir/plt-local-rehidden-pic-r.o tmpdir/plt-local-lib.so" "" \
          "" \
          { plt-local.s } \
          { { objdump -d plt-local.dd } } \
@@ -87,7 +87,7 @@ run_ld_link_tests [list \
 run_ld_link_tests [list \
     [list \
        "VAX export class call relocation test" \
-       "-shared -Ttext 0x12340000 -T export-class.ld" "" \
+       "-shared -Ttext 0x12340000 -T export-class.ld --hash-style=sysv" "" \
        "-k" \
        [list export-class-call.s export-class-def.s] \
        [list \
@@ -97,7 +97,7 @@ run_ld_link_tests [list \
        "export-class-call.so"] \
     [list \
        "VAX export class data relocation test" \
-       "-shared -Ttext 0x12340000 -T export-class.ld" "" \
+       "-shared -Ttext 0x12340000 -T export-class.ld --hash-style=sysv" "" \
        "-k" \
        [list export-class-data.s export-class-def.s] \
        [list \
index 50ddf74b2cff4a745d01e8d106fe722da6ca83fc..6b3521960f81b3e04ce3734879be99a93e780980 100644 (file)
@@ -1,6 +1,6 @@
 #source: bnd-branch-1.s
 #as: --64
-#ld: -z now -shared -melf_x86_64
+#ld: -z now -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 73ddc31c06aa38391bc964d6dd146f3778f88231..f29a40a1a18166bdebd8fbb2bda67d6279cfb474 100644 (file)
@@ -1,6 +1,6 @@
 #source: bnd-ifunc-1.s
 #as: --64 -madd-bnd-prefix
-#ld: -z now -shared -melf_x86_64 -z bndplt
+#ld: -z now -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 273e33460114f1bee32eb88ed75b42816beca23e..13e86bbd64d64e902ae0d3c01f7541a4efcabb6d 100644 (file)
@@ -1,5 +1,5 @@
 #as: --64 -madd-bnd-prefix
-#ld: -shared -melf_x86_64 -z bndplt
+#ld: -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 #...
index 1fbcd17454eb6132d7544c39c1f184719acf8779..bb9a26e5c10df54f7c13182a3e7af4521d25513e 100644 (file)
@@ -1,6 +1,6 @@
 #source: bnd-ifunc-2.s
 #as: --64 -madd-bnd-prefix
-#ld: -z now -shared -melf_x86_64 -z bndplt
+#ld: -z now -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index fc03c1700376cdb6ffd391da3161d19a0f2ea073..caba178d2eb965c1f820e4651f8ce2a207636a28 100644 (file)
@@ -1,5 +1,5 @@
 #as: --64 -madd-bnd-prefix
-#ld: -shared -melf_x86_64 -z bndplt
+#ld: -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 #...
index 2989f82c79ec77db2076dfa9b18830ef2c3791c4..9a14a2821e8ae4050bcd4a20e6fffd285d262a92 100644 (file)
@@ -1,6 +1,6 @@
 #source: bnd-branch-1.s
 #as: --64
-#ld: -z now -shared -melf_x86_64 -z bndplt
+#ld: -z now -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 66efb1a55c8e8bc87236eb1cabe0a98062e3f944..3f7c88dbc63dc0c89c56919552dac88dac34413d 100644 (file)
@@ -1,6 +1,6 @@
 #source: bnd-branch-1.s
 #as: --64
-#ld: -shared -melf_x86_64 -z bndplt
+#ld: -shared -melf_x86_64 -z bndplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 6147ab49fd7ff003ae7937098108e4e4c2d2c9ab..f0ffbc2c672da56a9e9d22cee8fe9abaeeab2026 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-1.s
 #as: --x32
-#ld: -shared -m elf32_x86_64
+#ld: -shared -m elf32_x86_64 --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index dbec3ede87b37b291c48546b855d753d9e377a38..8c36cfbde18ec202f522a054807ed9c62acc74c9 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-1.s
 #as: --64 -defsym __64_bit__=1
-#ld: -shared -m elf_x86_64
+#ld: -shared -m elf_x86_64 --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index df9dc8e3d71fc6c9461e1c38beb46dacc2ff6cbc..36117d83a9ee094bb8578cc7d22a289e0fb488f0 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --x32
-#ld: -shared -m elf32_x86_64 -z ibtplt
+#ld: -shared -m elf32_x86_64 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 0e4f424d3f47f2577f3d1f2613f4689296e8d2ec..4bdf8bddd9a405d6166a53cb61b762e8ee031740 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --64 -defsym __64_bit__=1
-#ld: -shared -m elf_x86_64 -z ibtplt
+#ld: -shared -m elf_x86_64 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index e908804cfab6785cc32a19279a4fcb528ba3d53c..ddfbd745cd090c1d02a081b6a12f69298ffb5542 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --x32
-#ld: -shared -m elf32_x86_64 -z ibt
+#ld: -shared -m elf32_x86_64 -z ibt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 0ef1131271f39072a4e2a1f866d2a2a668c96755..7502d83bb66cace4e6f0062df1e895ff9da122e8 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-2.s
 #as: --64 -defsym __64_bit__=1
-#ld: -shared -m elf_x86_64 -z ibt
+#ld: -shared -m elf_x86_64 -z ibt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 0f7835d966e06b8f7e99fbea16b461308e3c9a16..edf29f0447581c3d6164a1ccd3859d0692520556 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --x32
-#ld: -shared -m elf32_x86_64 -z ibtplt
+#ld: -shared -m elf32_x86_64 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index b8f2ebc04ef767f4dcce3b3653ab519afa0c31ed..7ee2f175ffcdc9dfcd902b5c1fdc439ea0938f47 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --64 -defsym __64_bit__=1
-#ld: -shared -m elf_x86_64 -z ibtplt
+#ld: -shared -m elf_x86_64 -z ibtplt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index 234944ddc4a73b1dc31c6deaa8afe11f595de345..85a4879126216d6076c3bb52a62677f01cae14c1 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --x32
-#ld: -shared -m elf32_x86_64 -z ibt
+#ld: -shared -m elf32_x86_64 -z ibt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index b299f22b6fedc58381b197f087ce0acea2f19c58..d0665aef6b9d53b4f08d77a0d8e5c97c5d89bacc 100644 (file)
@@ -1,6 +1,6 @@
 #source: ibt-plt-3.s
 #as: --64 -defsym __64_bit__=1
-#ld: -shared -m elf_x86_64 -z ibt
+#ld: -shared -m elf_x86_64 -z ibt --hash-style=sysv
 #objdump: -dw
 
 .*: +file format .*
index f560ae30756abb6a5ba47b836ff5d8625c9845a5..92c1f9cf9f15c204d26ff0b0da1e88dad2f8f36d 100644 (file)
@@ -1,6 +1,6 @@
 #source: ilp32-4.s
 #as: --x32
-#ld: -m elf32_x86_64_nacl -shared --no-ld-generated-unwind-info
+#ld: -m elf32_x86_64_nacl -shared --no-ld-generated-unwind-info --hash-style=sysv
 #readelf: -d -S --wide
 #target: x86_64-*-nacl*
 
index 658ad493b2e30f8f149d3f33f304eaa9083376fd..00d54c4453ca0c993c70f9baca1e0850b29e878f 100644 (file)
@@ -1,5 +1,5 @@
 #as: --x32
-#ld: -m elf32_x86_64 -shared --no-ld-generated-unwind-info
+#ld: -m elf32_x86_64 -shared --no-ld-generated-unwind-info --hash-style=sysv
 #readelf: -d -S --wide
 #target: x86_64-*-linux*
 
index 57bc2c2da556172f9088aafa4ea3bc2cf369e616..1ce80b4f343be647de6376377c91ff3a6d5b9b96 100644 (file)
@@ -1,6 +1,6 @@
 #source: load1.s
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-nacl*
 
index a4f7d8ac22f080420542e62be3172ebbe6f82cbb..65f7eed84844b9c8d893e3e8a6ca3ad3a28c156e 100644 (file)
@@ -1,6 +1,6 @@
 #source: load1.s
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index b741917eea2d7f4fea9aa50c4d407406a4ecd12d..19fea1afdac533c9cdc0e8c2b6d61b7f609731bd 100644 (file)
@@ -1,6 +1,6 @@
 #source: load1.s
 #as: --x32
-#ld: -shared -melf32_x86_64
+#ld: -shared -melf32_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-nacl*
 
index ee1e3f0196b1afb4b7313f156387a96366f16a23..2620c0227cb03e7ba35e0db1e71509aa0a1a5961 100644 (file)
@@ -1,6 +1,6 @@
 #source: load1.s
 #as: --x32
-#ld: -shared -melf32_x86_64
+#ld: -shared -melf32_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index 1ba08e0f6656f68b2642f8026cf27fa0f2cb8551..e3c0b5e8b812b7360c5a1b9adf5e3494f9519801 100644 (file)
@@ -107,23 +107,23 @@ set run_tests {
 
 run_ld_link_tests {
     {"Build libcall.so"
-     "-m elf_x86_64 -shared -z bndplt" "" "--64"
-     {mpx3b.s} {} "libcall.so"}
+     "-m elf_x86_64 -shared -z bndplt" ""
+     "--64" {mpx3b.s} {} "libcall.so"}
     {"Build mpx3"
-     "-m elf_x86_64 -z bndplt tmpdir/libcall.so" "" "--64"
-     {mpx3a.s} {{objdump -dw mpx3.dd}} "mpx3"}
+     "-m elf_x86_64 -z bndplt tmpdir/libcall.so" ""
+     "--64" {mpx3a.s} {{objdump -dw mpx3.dd}} "mpx3"}
     {"Build libcall1.so"
-     "-m elf_x86_64 -shared -z bndplt" "" "--64"
-     {mpx4b.s} {} "libcall1.so"}
+     "-m elf_x86_64 -shared -z bndplt" ""
+     "--64" {mpx4b.s} {} "libcall1.so"}
     {"Build mpx4"
-     "-m elf_x86_64 -z bndplt tmpdir/libcall1.so" "" "--64"
-     {mpx4a.s} {{objdump -dw mpx4.dd}} "mpx4"}
+     "-m elf_x86_64 -z bndplt --hash-style=sysv tmpdir/libcall1.so" ""
+     "--64" {mpx4a.s} {{objdump -dw mpx4.dd}} "mpx4"}
     {"Build mpx3 (-z now)"
-     "-z now -m elf_x86_64 -z bndplt tmpdir/libcall.so" "" "--64"
-     {mpx3a.s} {{objdump -dw mpx3n.dd}} "mpx3n"}
+     "-z now -m elf_x86_64 -z bndplt --hash-style=sysv tmpdir/libcall.so" ""
+     "--64" {mpx3a.s} {{objdump -dw mpx3n.dd}} "mpx3n"}
     {"Build mpx4 (-z now)"
-     "-z now -m elf_x86_64 -z bndplt tmpdir/libcall1.so" "" "--64"
-     {mpx4a.s} {{objdump -dw mpx4n.dd}} "mpx4n"}
+     "-z now -m elf_x86_64 -z bndplt --hash-style=sysv tmpdir/libcall1.so" ""
+     "--64" {mpx4a.s} {{objdump -dw mpx4n.dd}} "mpx4n"}
 }
 
 run_ld_link_exec_tests $run_tests
index 59f5e3e020b36b2cbd35c9f53ab6f527f6c3499a..efb74ed0fd42f734a62cfa603777d2be82a9d500 100644 (file)
@@ -1,6 +1,6 @@
 #source: pie3.s
 #as: --64
-#ld: -pie -melf_x86_64
+#ld: -pie -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-nacl*
 
index a200deb32e3f1af02201811676e73bdc71901670..7bc1ccb0b7bf808233e9dbf690c6c9d1038a5523 100644 (file)
@@ -1,5 +1,5 @@
 #as: --64
-#ld: -pie -melf_x86_64
+#ld: -pie -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index f6558e7cd74025efb625345078241a92815f857a..b71d705dd64003e8198472f9f09da3465fc4e0d8 100644 (file)
@@ -1,6 +1,6 @@
 #name: PR ld/14207
 #as: --64
-#ld: -melf_x86_64 -shared -z relro -z now
+#ld: -melf_x86_64 -shared -z relro -z now --hash-style=sysv
 #readelf: -l --wide
 #target: x86_64-*-linux*
 
index 42cd6c3d679c72174db482ef88d1112272e121c7..6916a51d4cde671f84508e65bd2e0e6c4e4b4741 100644 (file)
@@ -1,7 +1,7 @@
 #source: pr19162a.s
 #source: pr19162b.s
 #as: --64
-#ld: -melf_x86_64 -shared -z max-page-size=0x200000 -z common-page-size=0x1000
+#ld: -melf_x86_64 -shared -z max-page-size=0x200000 -z common-page-size=0x1000 --hash-style=sysv
 #readelf: -l --wide
 #target: x86_64-*-linux*
 
index 1bdbd8c8de013735b452a6fd4589a5bcf05e609a..f584bda5448704bcbb70bdf85af173a692bd14fc 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr19636-2.s
 #as: --64 -mrelax-relocations=no
-#ld: -pie -m elf_x86_64 --no-dynamic-linker
+#ld: -pie -m elf_x86_64 --no-dynamic-linker --hash-style=sysv
 #objdump: -dw
 #target: x86_64-*-nacl*
 
index 4f5c1f0e44f0fb71a591e9e17f527fcfeeaa842a..6f589aba2c0f38fb5e0a4c5c9e737ee24710dd61 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr19636-2.s
 #as: --64 -mrelax-relocations=no
-#ld: -pie -m elf_x86_64 --no-dynamic-linker
+#ld: -pie -m elf_x86_64 --no-dynamic-linker --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index 6953c7987581a61926fc4f688593526550de418a..158178d89fa674ae6d76c2e9dc49465be477bec8 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr20253-1.s
 #as: --64
-#ld: -pie -melf_x86_64
+#ld: -pie -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index 93193506e144ebd7f81cf770937337f1488d896f..f1ffbab2a8568350542bbb13e37eac13cbf9360b 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr20253-1.s
 #as: --64
-#ld: -shared -melf_x86_64
+#ld: -shared -melf_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index 5662e0c7c56233e5812a31274c58262723f3d2a2..b22d26a4aa285c079f3d8113e5ba8da50eb8c1bd 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr20253-1.s
 #as: --x32
-#ld: -pie -melf32_x86_64
+#ld: -pie -melf32_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index 83a61dbc94f7c1cd7e2de574e7a665a5168677fe..cef309ec15134d8544aaacedab19b4cfb36aa565 100644 (file)
@@ -1,6 +1,6 @@
 #source: pr20253-1.s
 #as: --x32
-#ld: -shared -melf32_x86_64
+#ld: -shared -melf32_x86_64 --hash-style=sysv
 #objdump: -dw
 #notarget: x86_64-*-nacl*
 
index fda0d50f4f965c9850403bc94d65fc06f8d1583a..d2e99abf35c93dac71a76af5dc3f3d8e8099e293 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/20830 (.plt.got, -z now)
 #source: pr20830.s
 #as: --64
-#ld: -z now -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z now -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 3122ba73ea8a786292cbe9a4dd15c46ea0ac872e..8ae6b71c1f7c26e87f75e9120a879f9a4855d5bb 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/20830 (.plt.got)
 #source: pr20830.s
 #as: --64
-#ld: -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 69120e162ae603d41b1fc58df67e084e94608557..bd9abc461ba96d5168d193dfd1b2f8d65e6f1dd6 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/20830 (.plt.got, -z now)
 #source: pr20830.s
 #as: --x32
-#ld: -z now -melf32_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z now -melf32_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 0bb79a388d991d15b4bea790b69c21747a8b7d90..83067e077f1378ceb4119865e7e1d674c366faee 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/20830 (.plt.got)
 #source: pr20830.s
 #as: --x32
-#ld: -melf32_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -melf32_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index ebc512887a104bd64053752ae18aeeac22f6c4b8..fb4ad8fa2e29a9801523c26791454a58aee941e1 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/21038 (.plt.got, -z now)
 #source: pr21038a.s
 #as: --64
-#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 81b26cb53c9c383e4a55f93a91e3b2295e53f27c..2ed962a6a2e0d1ee4d33171b115d2897e52388c9 100644 (file)
@@ -1,6 +1,6 @@
 #name: PR ld/21038 (.plt.got)
 #as: --64
-#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index b9a8c4d082f1af071e6b069b3ec5c140b4225371..914b123e4015f4e139695ce105e444e95daadf4e 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/21038 (.plt.sec, -z now)
 #source: pr21038b.s
 #as: --64
-#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 3457d4d4f024c6983d96699fd4ec37acecafc3fe..faeaf4575a3f7899b302190def79c9e28182d55d 100644 (file)
@@ -1,6 +1,6 @@
 #name: PR ld/21038 (.plt.sec)
 #as: --64
-#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index 4b6db6f85080832e055315443439619f83e3a10a..640e82103c7c5f80b206231d5ed4f58dd8e5410b 100644 (file)
@@ -1,7 +1,7 @@
 #name: PR ld/21038 (.plt.got and .plt.sec, -z now)
 #source: pr21038c.s
 #as: --64
-#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z now -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index eb6f2076b1ae51a53e146d4d7cb98ff8371e718d..4b0bd89a03d7d1e9bc8a2b34f1846f8e81450966 100644 (file)
@@ -1,6 +1,6 @@
 #name: PR ld/21038 (.plt.got and .plt.sec)
 #as: --64
-#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info
+#ld: -z bndplt -melf_x86_64 -shared -z relro --ld-generated-unwind-info --hash-style=sysv
 #objdump: -dw -Wf
 
 .*: +file format .*
index c582582297862de40954c7a6e0931a51e98ed0ac..ce29cc863461da80909f9d4a3e3f6a0ea6ed48ef 100644 (file)
@@ -50,20 +50,20 @@ set x86_64tests {
      "-melf_x86_64 tmpdir/libpltlib.so" "" "--64" {plt.s}
      {{objdump -drj.plt plt.pd}} "plt"}
     {"TLS -fpic -shared transitions"
-     "-shared -melf_x86_64 --no-ld-generated-unwind-info" ""
+     "-shared -melf_x86_64 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64" {tlspic1.s tlspic2.s}
      {{readelf -WSsrl tlspic.rd} {objdump -drj.text\ -Mintel64 tlspic.dd}
       {objdump -sj.got tlspic.sd} {objdump -sj.tdata tlspic.td}}
       "libtlspic.so"}
     {"TLS -fpic -shared transitions with r15 as GOT base"
-     "-shared -melf_x86_64 --no-ld-generated-unwind-info" ""
+     "-shared -melf_x86_64 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64 -mrelax-relocations=yes"
      {tlspic3.s tlspic2.s}
      {{readelf -WSsrl tlspic2.rd} {objdump -drj.text\ -Mintel64 tlspic2.dd}
       {objdump -sj.got tlspic2.sd} {objdump -sj.tdata tlspic2.td}}
       "libtlspic2.so"}
     {"TLS descriptor -fpic -shared transitions"
-     "-shared -melf_x86_64 --no-ld-generated-unwind-info" ""
+     "-shared -melf_x86_64 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64" {tlsdesc.s tlspic2.s}
      {{readelf -WSsrld tlsdesc.rd} {objdump -drj.text tlsdesc.dd}
       {objdump "-s -j.got -j.got.plt" tlsdesc.sd} {objdump -sj.tdata tlsdesc.td}
@@ -71,25 +71,25 @@ set x86_64tests {
     {"Helper shared library" "-shared -melf_x86_64" ""
      "--64" {tlslib.s} {} "libtlslib.so"}
     {"TLS -fpic and -fno-pic exec transitions"
-     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64" {tlsbinpic.s tlsbin.s}
      {{readelf -WSsrl tlsbin.rd} {objdump -drj.text tlsbin.dd}
       {objdump -sj.got tlsbin.sd} {objdump -sj.tdata tlsbin.td}}
       "tlsbin"}
     {"TLS -fpic and -fno-pic exec transitions without PLT"
-     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "-mrelax-relocations=yes --64" {tlsbinpic2.s tlsbin.s}
      {{readelf -WSsrl tlsbin2.rd} {objdump -drj.text tlsbin2.dd}
       {objdump -sj.got tlsbin2.sd} {objdump -sj.tdata tlsbin2.td}}
       "tlsbin2"}
     {"TLS descriptor -fpic and -fno-pic exec transitions"
-     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info" ""
+     "-melf_x86_64 tmpdir/libtlslib.so --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64" {tlsbindesc.s tlsbin.s}
      {{readelf -WSsrl tlsbindesc.rd} {objdump -drj.text tlsbindesc.dd}
       {objdump -sj.got tlsbindesc.sd} {objdump -sj.tdata tlsbindesc.td}}
       "tlsbindesc"}
     {"TLS with global dynamic and descriptors"
-     "-shared -melf_x86_64 --no-ld-generated-unwind-info" ""
+     "-shared -melf_x86_64 --no-ld-generated-unwind-info --hash-style=sysv" ""
      "--64" {tlsgdesc.s}
      {{readelf -WSsrl tlsgdesc.rd} {objdump -drj.text\ -Mintel64 tlsgdesc.dd}}
       "libtlsgdesc.so"}
@@ -1544,7 +1544,7 @@ if { ![istarget "x86_64-*-linux*"]} {
 run_ld_link_tests [list \
     [list \
        "basic PLT generation (-z now)" \
-       "-z now -melf_x86_64 tmpdir/libpltlib.so" \
+       "-z now -melf_x86_64 --hash-style=sysv tmpdir/libpltlib.so" \
        "" \
        "--64" \
        {plt2.s} \
index 750979bc52b7086bac1a9616c6d3ffced74d82b7..487abbcf6d0b3b610c0b0c04d30f8ce6d46f7f2b 100644 (file)
@@ -34,7 +34,8 @@ if { !([istarget "xtensa*-*-linux*"]) } {
 
 set xtensatests {
     {"TLS -shared transitions"
-     "-shared -melf32xtensa" "" "" {tlspic1.s tlspic2.s}
+     "-shared -melf32xtensa --hash-style=sysv" ""
+     "" {tlspic1.s tlspic2.s}
      {{readelf -WSsrl tlspic.rd}
       {objdump "-drj.text --start-address=0x350" tlspic.dd}
       {objdump "-sj.text --stop-address=0x350" tlspic.sd}
@@ -43,7 +44,8 @@ set xtensatests {
     {"Helper shared library" "-shared -melf32xtensa" ""
      "" {tlslib.s} {} "libtlslib.so"}
     {"TLS exec transitions"
-     "-melf32xtensa tmpdir/libtlslib.so" "" "" {tlsbin.s}
+     "-melf32xtensa tmpdir/libtlslib.so --hash-style=sysv" ""
+     "" {tlsbin.s}
      {{readelf -WSsrl tlsbin.rd}
       {objdump "-drj.text --start-address=0x400238" tlsbin.dd}
       {objdump "-sj.text --stop-address=0x400238" tlsbin.sd}