[PATCH] Fix IA-64 TLS with ld relaxation
Jakub Jelinek
jakub@redhat.com
Fri Mar 28 14:54:00 GMT 2003
Hi!
ld relaxation for ldxmov broke LD model TLS in binaries, as
self_dtpmod_offset is computed only the first time some LD relocation is
seen (because it is shared between all of them). When recomputing got
offsets, we need to reset it, so that it is recomputed too.
Commited as obvious.
2003-03-27 Jakub Jelinek <jakub@redhat.com>
* elfxx-ia64.c (elfNN_ia64_relax_section): Reset self_dtpmod_offset
to -1 before recomputing got offsets.
--- bfd/elfxx-ia64.c.jj 2003-03-26 03:54:39.000000000 -0500
+++ bfd/elfxx-ia64.c 2003-03-27 17:48:00.000000000 -0500
@@ -1032,6 +1032,7 @@ elfNN_ia64_relax_section (abfd, sec, lin
struct elfNN_ia64_allocate_data data;
data.info = link_info;
data.ofs = 0;
+ ia64_info->self_dtpmod_offset = (bfd_vma) -1;
elfNN_ia64_dyn_sym_traverse (ia64_info, allocate_global_data_got, &data);
elfNN_ia64_dyn_sym_traverse (ia64_info, allocate_global_fptr_got, &data);
Jakub
More information about the Binutils
mailing list