Orphan output section with multiple input sections
authorAlan Modra <amodra@gmail.com>
Wed, 28 Oct 2015 06:48:13 +0000 (17:18 +1030)
committerAlan Modra <amodra@gmail.com>
Wed, 28 Oct 2015 07:21:10 +0000 (17:51 +1030)
commit199af1503922ce2134d774a78be0d9e2ae055ab1
treedd1fcec6689ca3acbd5ef488fc0f5db79581fb1e
parent26656b1dc6c00f2eea0d329cc2637aebf3da1458
Orphan output section with multiple input sections

If given input sections with differing flags, we'd like to place the
section according to the final output section flags.

bfd/
PR ld/19162
* elflink.c (_bfd_elf_gc_mark_reloc): Move code iterating over
linker input bfds..
* section.c (bfd_get_next_section_by_name): ..to here.  Add ibfd param.
(bfd_get_linker_section): Adjust bfd_get_next_section_by_name call.
* tekhex.c (first_phase): Likewise.
* elflink.c (bfd_elf_gc_sections): Likewise.
* bfd-in2.h: Regenerate.
ld/
PR ld/19162
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Check flags
before calling _bfd_elf_match_sections_by_type.  Merge flags for
any other input sections that might match a new output section to
decide placement.
bfd/ChangeLog
bfd/bfd-in2.h
bfd/elflink.c
bfd/section.c
bfd/tekhex.c
ld/ChangeLog
ld/emultempl/elf32.em