Skip unknown relocation
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 7 Jan 2015 00:46:36 +0000 (16:46 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 7 Jan 2015 00:46:36 +0000 (16:46 -0800)
PR binutils/17512
* elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
* elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.

bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c

index 10ffe34e9ef425dd8ca21b01dbdd96058e9d317e..3483d79031e71903b50dcf7bdb61e981b0d9dd16 100644 (file)
@@ -1,3 +1,9 @@
+2015-01-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/17512
+       * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
+       * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
+
 2015-01-06  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512
index cf072a31207838d3240f0847d173cdf1e3e7b54e..a6c8faab9a53655a1fb298abc3c0b9678632235c 100644 (file)
@@ -5194,9 +5194,9 @@ bad_return:
     {
       long reloc_index;
 
-      /* PR 17512: file: bc9d6cf5.  */
+      /* Skip unknown relocation.  PR 17512: file: bc9d6cf5.  */
       if (p->howto == NULL)
-       goto bad_return;
+       continue;
 
       if (p->howto->type != R_386_JUMP_SLOT
          && p->howto->type != R_386_IRELATIVE)
index 5cbb6fd9ba28d0492fd6820ad3f9a429ab5ca0f0..581ee171773f243ccf952037e91cebf81f275ea1 100644 (file)
@@ -5559,8 +5559,9 @@ bad_return:
     {
       long reloc_index;
 
+      /* Skip unknown relocation.  */
       if (p->howto == NULL)
-       goto bad_return;
+       continue;
 
       if (p->howto->type != R_X86_64_JUMP_SLOT
          && p->howto->type != R_X86_64_IRELATIVE)