From 3ffa5234cbadec4993cc27c4a085d6202a0e5631 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Sat, 12 Jun 2004 11:30:10 +0000 Subject: [PATCH] * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc overflow on branches to undefweaks. --- bfd/ChangeLog | 5 +++++ bfd/elf64-x86-64.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 2de9b6cc06..63bd2ad4a0 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2004-06-12 Alan Modra + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc + overflow on branches to undefweaks. + 2004-06-11 Maciej W. Rozycki * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index f9eb7db643..a701e45cef 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -2420,6 +2420,11 @@ elf64_x86_64_relocate_section (bfd *output_bfd, struct bfd_link_info *info, if (r == bfd_reloc_overflow) { + if (h != NULL + && h->root.type == bfd_link_hash_undefweak + && howto->pc_relative) + /* Ignore reloc overflow on branches to undefweak syms. */ + continue; if (! ((*info->callbacks->reloc_overflow) (info, name, howto->name, (bfd_vma) 0,