diff options
Diffstat (limited to 'ld/emultempl')
-rw-r--r-- | ld/emultempl/elf32.em | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em index e1e37f1..0425d15 100644 --- a/ld/emultempl/elf32.em +++ b/ld/emultempl/elf32.em @@ -1363,8 +1363,9 @@ gld${EMULATION_NAME}_place_orphan (lang_input_statement_type *file, asection *s) if (os != NULL && (os->bfd_section == NULL || os->bfd_section->flags == 0 - || ((!iself - || sh_type == elf_section_type (os->bfd_section)) + || (bfd_match_sections_by_type (output_bfd, + os->bfd_section, + s->owner, s) && ((s->flags ^ os->bfd_section->flags) & (SEC_LOAD | SEC_ALLOC)) == 0))) { |