relocs_compatible test for gc-sections
authorAlan Modra <amodra@gmail.com>
Sun, 29 Oct 2017 23:50:29 +0000 (10:20 +1030)
committerAlan Modra <amodra@gmail.com>
Mon, 30 Oct 2017 00:33:50 +0000 (11:03 +1030)
commit81742b83e9f25895eaaf3a07ac1651a4e9a68251
treece6ef2cdab6327ca8f8a795454c4d37f08a00579
parentd336fa6d820f50235c271ea327fadbf4ff6e1edd
relocs_compatible test for gc-sections

I noticed when looking at pr22300 that before calling check_relocs we
have an elf_object_id test (added for pr11933) as well as the
relocs_compatible test.  I believe backend gc_mark_hook and
gc_sweep_hook ought to be protected similarly from being confused by
unexpected relocations (for example, both elf64-ppc.c and elf32-ppc.c
use _bfd_elf_relocs_compatible, so I think it would be possible for
the ppc64 gc_mark_hook to be presented with a ppc32 relocatable
object).

* elflink.c (elf_gc_sweep): Test elf_object_id in addition to
relocs_compatible.
(bfd_elf_gc_sections): Likewise.
bfd/ChangeLog
bfd/elflink.c