aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf64-x86-64.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2009-06-14 05:53:55 +0000
committerH.J. Lu <hjl.tools@gmail.com>2009-06-14 05:53:55 +0000
commit637fa7af7fc91adde728881444f49bcafd6ce3c5 (patch)
treeb469368458ed29ecab820e2aeef22cf2be951854 /bfd/elf64-x86-64.c
parent8b7e29925c2f1d23df7fba3a7fa6175a5e60499c (diff)
downloadgdb-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.c8
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;
}