The least significant bit in GOT offset is to record whether we have
initialized the GOT entry in R_386_GOT32 processing.  We need to mask
it off for R_386_GOT32X.
	PR ld/19601
	* elf32-i386.c (elf_i386_relocate_section): Mask off the least
	significant bit in GOT offset for R_386_GOT32X.
+2016-02-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/19601
+       * elf32-i386.c (elf_i386_relocate_section): Mask off the least
+       significant bit in GOT offset for R_386_GOT32X.
+
 2016-02-10  Nick Clifton  <nickc@redhat.com>
 
        PR 19405
 
 
          /* It is relative to .got.plt section.  */
          if (h->got.offset != (bfd_vma) -1)
-           /* Use GOT entry.  */
+           /* Use GOT entry.  Mask off the least significant bit in
+              GOT offset which may be set by R_386_GOT32 processing
+              below.  */
            relocation = (htab->elf.sgot->output_section->vma
                          + htab->elf.sgot->output_offset
-                         + h->got.offset - offplt);
+                         + (h->got.offset & ~1) - offplt);
          else
            /* Use GOTPLT entry.  */
            relocation = (h->plt.offset / plt_entry_size - 1 + 3) * 4;