2014-02-20 Chung-Lin Tang <cltang@codesourcery.com>

* elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
        of GOTOFF relocations.
This commit is contained in:
Chung-Lin Tang 2014-02-19 21:40:21 -08:00
parent 1b28144374
commit d9972968c1
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
* elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
of GOTOFF relocations.
2014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
H.J. Lu <hongjiu.lu@intel.com>

View File

@ -3147,9 +3147,13 @@ nios2_elf32_relocate_section (bfd *output_bfd,
break;
}
/* Adjust the relocation to be relative to the GOT pointer. */
relocation -= (sgot->output_section->vma
+ sgot->output_offset - got_base);
/* Note that sgot->output_offset is not involved in this
calculation. We always want the start of .got. */
relocation -= sgot->output_section->vma;
/* Now we adjust the relocation to be relative to the GOT pointer
(the _gp_got symbol), which possibly contains the 0x8000 bias. */
relocation -= got_base;
switch (howto->type)
{