x86-64: Don't mask out R_X86_64_converted_reloc_bit
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 6 Apr 2018 12:06:08 +0000 (05:06 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 6 Apr 2018 12:06:21 +0000 (05:06 -0700)
R_X86_64_converted_reloc_bit is set in elf_x86_64_convert_load_reloc
which is called from elf_x86_64_check_relocs.  Since it is used only
internally by linker, there is no need to mask it out in
elf_x86_64_info_to_howto.

* elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
R_X86_64_converted_reloc_bit.

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

index 58ec0ce83e515f49b07b0cce70550b34fa458371..a8eaebb9af0f6cba08a46a7f7a46203d7e9dbbd8 100644 (file)
@@ -1,3 +1,8 @@
+2018-04-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
+       R_X86_64_converted_reloc_bit.
+
 2018-04-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR gas/22318
index fcc82363735c0125f34614ed8ca80f0e3533e52b..25723797ba5616b74ea13115c237faba72c96e61 100644 (file)
@@ -344,9 +344,6 @@ elf_x86_64_info_to_howto (bfd *abfd, arelent *cache_ptr,
   unsigned r_type;
 
   r_type = ELF32_R_TYPE (dst->r_info);
-  if (r_type != (unsigned int) R_X86_64_GNU_VTINHERIT
-      && r_type != (unsigned int) R_X86_64_GNU_VTENTRY)
-    r_type &= ~R_X86_64_converted_reloc_bit;
   cache_ptr->howto = elf_x86_64_rtype_to_howto (abfd, r_type);
   if (cache_ptr->howto == NULL)
     return FALSE;