Fix the calculation of AMD64_PCRQUAD relocations.
PR ld/17955 * coff-x86_64.c (coff_amd64_rtype_to_howto): Use an 8 byte offset for R_AMD64_PCRQUAD relocations.
This commit is contained in:
parent
2b848ebdbb
commit
384f750334
@ -1,3 +1,9 @@
|
||||
2016-09-26 Awson <kyrab@mail.ru>
|
||||
|
||||
PR ld/17955
|
||||
* coff-x86_64.c (coff_amd64_rtype_to_howto): Use an 8 byte offset
|
||||
for R_AMD64_PCRQUAD relocations.
|
||||
|
||||
2016-09-26 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Declare.
|
||||
|
@ -614,7 +614,12 @@ coff_amd64_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
|
||||
#if defined(COFF_WITH_PE)
|
||||
if (howto->pc_relative)
|
||||
{
|
||||
*addendp -= 4;
|
||||
#ifndef DONT_EXTEND_AMD64
|
||||
if (rel->r_type == R_AMD64_PCRQUAD)
|
||||
*addendp -= 8;
|
||||
else
|
||||
#endif
|
||||
*addendp -= 4;
|
||||
|
||||
/* If the symbol is defined, then the generic code is going to
|
||||
add back the symbol value in order to cancel out an
|
||||
|
Loading…
x
Reference in New Issue
Block a user