diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2012-12-21 20:54:59 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2012-12-21 20:54:59 +0000 |
commit | 9911c0fc433eef4a6d7dbf100c926d65d2fd868b (patch) | |
tree | b8cc5b17d5b761be0b8b0a3e004f1b589d17e376 /bfd | |
parent | a5479e5ff4c29dcf93acde1424b69d4909fd3044 (diff) | |
download | gdb-9911c0fc433eef4a6d7dbf100c926d65d2fd868b.zip gdb-9911c0fc433eef4a6d7dbf100c926d65d2fd868b.tar.gz gdb-9911c0fc433eef4a6d7dbf100c926d65d2fd868b.tar.bz2 |
Check R_X86_64_standard for unrecognized relocation
* elf64-x86-64.c (elf_x86_64_relocate_section): Check
R_X86_64_standard instead of R_X86_64_max for unrecognized
relocation.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 48f94da..ec7d98f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,11 @@ 2012-12-21 H.J. Lu <hongjiu.lu@intel.com> + * elf64-x86-64.c (elf_x86_64_relocate_section): Check + R_X86_64_standard instead of R_X86_64_max for unrecognized + relocation. + +2012-12-21 H.J. Lu <hongjiu.lu@intel.com> + PR ld/14980 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly adjust h->plt.refcount. diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 11ec917..92bf991 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -3207,8 +3207,11 @@ elf_x86_64_relocate_section (bfd *output_bfd, || r_type == (int) R_X86_64_GNU_VTENTRY) continue; - if (r_type >= R_X86_64_max) + if (r_type >= (int) R_X86_64_standard) { + (*_bfd_error_handler) + (_("%B: unrecognized relocation (0x%x) in section `%A'"), + input_bfd, input_section, r_type); bfd_set_error (bfd_error_bad_value); return FALSE; } |