diff options
author | Alan Modra <amodra@gmail.com> | 2004-06-12 11:30:10 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2004-06-12 11:30:10 +0000 |
commit | 3ffa5234cbadec4993cc27c4a085d6202a0e5631 (patch) | |
tree | 48fc7226745b1dbc43f7a8897c2931ed74cdfc79 | |
parent | 0bbed51abea947abdf463daffbd1303581c2006b (diff) | |
download | gdb-3ffa5234cbadec4993cc27c4a085d6202a0e5631.zip gdb-3ffa5234cbadec4993cc27c4a085d6202a0e5631.tar.gz gdb-3ffa5234cbadec4993cc27c4a085d6202a0e5631.tar.bz2 |
* elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
overflow on branches to undefweaks.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 2de9b6c..63bd2ad 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2004-06-12 Alan Modra <amodra@bigpond.net.au> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc + overflow on branches to undefweaks. + 2004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl> * 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 f9eb7db..a701e45 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, |