mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-30 09:09:16 +08:00
* elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
This commit is contained in:
@ -1,5 +1,7 @@
|
|||||||
2002-06-01 Richard Henderson <rth@redhat.com>
|
2002-06-01 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
|
* elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
|
||||||
|
|
||||||
* elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
|
* elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
|
||||||
check; don't suppress dynamic relocs for non-allocated sections.
|
check; don't suppress dynamic relocs for non-allocated sections.
|
||||||
|
|
||||||
|
@ -1656,19 +1656,15 @@ elf64_alpha_relax_section (abfd, sec, link_info, again)
|
|||||||
info.relocs = internal_relocs;
|
info.relocs = internal_relocs;
|
||||||
info.relend = irelend = internal_relocs + sec->reloc_count;
|
info.relend = irelend = internal_relocs + sec->reloc_count;
|
||||||
|
|
||||||
/* Find the GP for this object. */
|
/* Find the GP for this object. Do not store the result back via
|
||||||
|
_bfd_set_gp_value, since this could change again before final. */
|
||||||
info.gotobj = alpha_elf_tdata (abfd)->gotobj;
|
info.gotobj = alpha_elf_tdata (abfd)->gotobj;
|
||||||
if (info.gotobj)
|
if (info.gotobj)
|
||||||
{
|
{
|
||||||
asection *sgot = alpha_elf_tdata (info.gotobj)->got;
|
asection *sgot = alpha_elf_tdata (info.gotobj)->got;
|
||||||
info.gp = _bfd_get_gp_value (info.gotobj);
|
|
||||||
if (info.gp == 0)
|
|
||||||
{
|
|
||||||
info.gp = (sgot->output_section->vma
|
info.gp = (sgot->output_section->vma
|
||||||
+ sgot->output_offset
|
+ sgot->output_offset
|
||||||
+ 0x8000);
|
+ 0x8000);
|
||||||
_bfd_set_gp_value (info.gotobj, info.gp);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (irel = internal_relocs; irel < irelend; irel++)
|
for (irel = internal_relocs; irel < irelend; irel++)
|
||||||
|
Reference in New Issue
Block a user