diff --git a/bfd/ChangeLog b/bfd/ChangeLog index edf983ae319..1a84fc5ea84 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2014-07-08 Nick Clifton + + PR ld/17110 + * elf32-sh.c (sh_elf_osec_to_segment): Do not look for output + segments in input bfds. + 2014-07-08 Will Newton * elf32-arm.c (ELF_MAXPAGESIZE): Increase the default diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c index 34dfea2197e..5085830d8af 100644 --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -3676,7 +3676,9 @@ sh_elf_osec_to_segment (bfd *output_bfd, asection *osec) { Elf_Internal_Phdr *p = NULL; - if (output_bfd->xvec->flavour == bfd_target_elf_flavour) + if (output_bfd->xvec->flavour == bfd_target_elf_flavour + /* PR ld/17110: Do not look for output segments in an input bfd. */ + && output_bfd->direction != read_direction) p = _bfd_elf_find_segment_containing_section (output_bfd, osec); /* FIXME: Nothing ever says what this index is relative to. The kernel