mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-24 20:28:28 +08:00
* elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation
againt mergeable sections. Take r_addend into account when caching trampolines.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2003-03-18 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation
|
||||||
|
againt mergeable sections. Take r_addend into account when caching
|
||||||
|
trampolines.
|
||||||
|
|
||||||
2003-03-18 Richard Henderson <rth@redhat.com>
|
2003-03-18 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
* elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for
|
* elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for
|
||||||
|
@ -819,6 +819,7 @@ elfNN_ia64_relax_section (abfd, sec, link_info, again)
|
|||||||
|
|
||||||
tsec = ia64_info->plt_sec;
|
tsec = ia64_info->plt_sec;
|
||||||
toff = dyn_i->plt2_offset;
|
toff = dyn_i->plt2_offset;
|
||||||
|
BFD_ASSERT (irel->r_addend == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Can't do anything else with dynamic symbols. */
|
/* Can't do anything else with dynamic symbols. */
|
||||||
@ -837,10 +838,15 @@ elfNN_ia64_relax_section (abfd, sec, link_info, again)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
symaddr = (tsec->output_section->vma
|
if (tsec->sec_info_type == ELF_INFO_TYPE_MERGE)
|
||||||
+ tsec->output_offset
|
toff = _bfd_merged_section_offset (abfd, &tsec,
|
||||||
+ toff
|
elf_section_data (tsec)->sec_info,
|
||||||
+ irel->r_addend);
|
toff + irel->r_addend,
|
||||||
|
(bfd_vma) 0);
|
||||||
|
else
|
||||||
|
toff += irel->r_addend;
|
||||||
|
|
||||||
|
symaddr = tsec->output_section->vma + tsec->output_offset + toff;
|
||||||
|
|
||||||
roff = irel->r_offset;
|
roff = irel->r_offset;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user