mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-19 22:03:57 +08:00
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:
@ -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>
|
2016-09-26 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Declare.
|
* 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 defined(COFF_WITH_PE)
|
||||||
if (howto->pc_relative)
|
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
|
/* If the symbol is defined, then the generic code is going to
|
||||||
add back the symbol value in order to cancel out an
|
add back the symbol value in order to cancel out an
|
||||||
|
Reference in New Issue
Block a user