diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-06-14 05:45:09 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-06-14 05:45:09 +0000 |
commit | 8b7e29925c2f1d23df7fba3a7fa6175a5e60499c (patch) | |
tree | 7904bffd0b2f713fa55f510c9b7195185fa65ba7 /bfd | |
parent | c25bc9fc0d99cdc97211346362b677428747eabd (diff) | |
download | gdb-8b7e29925c2f1d23df7fba3a7fa6175a5e60499c.zip gdb-8b7e29925c2f1d23df7fba3a7fa6175a5e60499c.tar.gz gdb-8b7e29925c2f1d23df7fba3a7fa6175a5e60499c.tar.bz2 |
2009-06-13 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_check_relocs): Properly report
local symbol for unhandled relocation against STT_GNU_IFUNC
symbol.
* elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 7 | ||||
-rw-r--r-- | bfd/elf32-i386.c | 3 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6022765..05e93da 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,12 @@ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> + * elf32-i386.c (elf_i386_check_relocs): Properly report + local symbol for unhandled relocation against STT_GNU_IFUNC + symbol. + * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. + +2009-06-13 H.J. Lu <hongjiu.lu@intel.com> + PR ld/10269 * elf32-i386.c: Include "objalloc.h" and "hashtab.h". (elf_i386_link_hash_table): Add loc_hash_table and diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index 273bd85..c6e6265 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -1480,7 +1480,8 @@ elf_i386_check_relocs (bfd *abfd, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' isn't handled by %s"), abfd, elf_howto_table[r_type].name, - h != NULL ? h->root.root.string : "a local symbol", + (h->root.root.string + ? h->root.root.string : "a local symbol"), __FUNCTION__); bfd_set_error (bfd_error_bad_value); return FALSE; diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 2808906..3cb4f06 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -1263,7 +1263,8 @@ elf64_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' isn't handled by %s"), abfd, x86_64_elf_howto_table[r_type].name, - h != NULL ? h->root.root.string : "a local symbol", + (h->root.root.string + ? h->root.root.string : "a local symbol"), __FUNCTION__); bfd_set_error (bfd_error_bad_value); return FALSE; |