diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/ldlang.c | 11 |
2 files changed, 12 insertions, 5 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 0721142..8bb2be1 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2016-04-21 Nick Clifton <nickc@redhat.com> + + * ldlang.c (lang_check_relocs): Use bfd_link_check_relocs in + prefernce to _bfd_elf_link_check_relocs. Drop test for ELF + targets. Do not stop the checks when problems are encountered. + 2016-04-21 Alan Modra <amodra@gmail.com> * testsuite/ld-scripts/cross3.t: Add commonly used data diff --git a/ld/ldlang.c b/ld/ldlang.c index 2ae3640..96947da 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -6783,18 +6783,19 @@ lang_add_gc_name (const char * name) static void lang_check_relocs (void) { - if (link_info.check_relocs_after_open_input - && bfd_get_flavour (link_info.output_bfd) == bfd_target_elf_flavour) + if (link_info.check_relocs_after_open_input) { bfd *abfd; for (abfd = link_info.input_bfds; abfd != (bfd *) NULL; abfd = abfd->link.next) - if (!_bfd_elf_link_check_relocs (abfd, &link_info)) + if (!bfd_link_check_relocs (abfd, &link_info)) { - /* no object output, fail return */ + /* No object output, fail return. */ config.make_executable = FALSE; - break; + /* Note: we do not abort the loop, but rather + continue the scan in case there are other + bad relocations to report. */ } } } |