diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-06-14 05:53:55 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-06-14 05:53:55 +0000 |
commit | 637fa7af7fc91adde728881444f49bcafd6ce3c5 (patch) | |
tree | b469368458ed29ecab820e2aeef22cf2be951854 /bfd/elf64-x86-64.c | |
parent | 8b7e29925c2f1d23df7fba3a7fa6175a5e60499c (diff) | |
download | gdb-637fa7af7fc91adde728881444f49bcafd6ce3c5.zip gdb-637fa7af7fc91adde728881444f49bcafd6ce3c5.tar.gz gdb-637fa7af7fc91adde728881444f49bcafd6ce3c5.tar.bz2 |
2009-06-13 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_relocate_section): Properly report
local symbol for unhandled relocation against STT_GNU_IFUNC
symbol.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
Diffstat (limited to 'bfd/elf64-x86-64.c')
-rw-r--r-- | bfd/elf64-x86-64.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 3cb4f06..27b1cbd 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -2867,7 +2867,9 @@ elf64_x86_64_relocate_section (bfd *output_bfd, struct bfd_link_info *info, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' isn't handled by %s"), input_bfd, x86_64_elf_howto_table[r_type].name, - h->root.root.string, __FUNCTION__); + (h->root.root.string + ? h->root.root.string : "a local symbol"), + __FUNCTION__); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -2883,7 +2885,9 @@ elf64_x86_64_relocate_section (bfd *output_bfd, struct bfd_link_info *info, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' has non-zero addend: %d"), input_bfd, x86_64_elf_howto_table[r_type].name, - h->root.root.string, rel->r_addend); + (h->root.root.string + ? h->root.root.string : "a local symbol"), + rel->r_addend); bfd_set_error (bfd_error_bad_value); return FALSE; } |