PR23653, ld SIGSEGVs when attempts to link sparc object with x86_64 library
authorAlan Modra <amodra@gmail.com>
Tue, 16 Oct 2018 22:47:30 +0000 (09:17 +1030)
committerAlan Modra <amodra@gmail.com>
Wed, 17 Oct 2018 04:06:18 +0000 (14:36 +1030)
commit4de5434b694fc260d02610e8e7fec21b2923600a
treed29cc20953677fc78185deda6aafab76f42ac6a8
parentc69f6b80965608480be970c3c42f9da1b08a3ef0
PR23653, ld SIGSEGVs when attempts to link sparc object with x86_64 library

This patch improves dynobj selection.  This allows the testcase in the
PR to proceed further before segfaulting due to other bugs in the
sparc backend.

../ld/ld-new --eh-frame-hdr -m elf_x86_64 -shared -o bug.so.5 bug.o ./libc.so.6 ./crtendS.o
../ld/ld-new: sparc architecture of input file `bug.o' is incompatible with i386:x86-64 output
../ld/ld-new: bug.o: in function `a':
bug.c:(.text+0x4): undefined reference to `_GLOBAL_OFFSET_TABLE_'
../ld/ld-new: bug.c:(.text+0x8): undefined reference to `_GLOBAL_OFFSET_TABLE_'
Segmentation fault

PR 23653
* elflink.c (_bfd_elf_link_create_dynstrtab): Match elf_object_id
too when choosing dynobj.
bfd/ChangeLog
bfd/elflink.c