diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2006-02-04 08:29:58 +0000 |
---|---|---|
committer | Richard Sandiford <rdsandiford@googlemail.com> | 2006-02-04 08:29:58 +0000 |
commit | 4005427f8676ad78c88b430fa25e1d179207cbf4 (patch) | |
tree | d556895326fe00b51acacc76b377a748bd5b1536 /bfd | |
parent | 2f2817dbdadb8ed4b2e201b63416157c72979cd5 (diff) | |
download | gdb-4005427f8676ad78c88b430fa25e1d179207cbf4.zip gdb-4005427f8676ad78c88b430fa25e1d179207cbf4.tar.gz gdb-4005427f8676ad78c88b430fa25e1d179207cbf4.tar.bz2 |
bfd/
* elfxx-mips.c (mips_elf_initialize_tls_index): If a TLS symbol
has already been assigned a GOT index, copy that index to the
current hash table entry.
ld/testsuite/
* ld-mips-elf/tls-hidden2a.s, ld-mips-elf/tls-hidden2b.s,
* ld/testsuite/ld-mips-elf/tls-hidden2.d,
* ld/testsuite/ld-mips-elf/tls-hidden2-got.d: New test.
* ld-mips-elf/mips-elf.exp: Run it.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elfxx-mips.c | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5bd1e34..f2ca17d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2006-02-04 Richard Sandiford <richard@codesourcery.com> + + * elfxx-mips.c (mips_elf_initialize_tls_index): If a TLS symbol + has already been assigned a GOT index, copy that index to the + current hash table entry. + 2006-02-01 Eric Botcazou <ebotcazou@libertysurf.fr> * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Reinstate bypass diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 99a0def..2675ee08 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -2994,7 +2994,10 @@ mips_elf_initialize_tls_index (void **entryp, void *p) if (g->next == NULL) { if (entry->d.h->tls_type & GOT_TLS_OFFSET_DONE) - return 1; + { + entry->gotidx = entry->d.h->tls_got_offset; + return 1; + } entry->d.h->tls_type |= GOT_TLS_OFFSET_DONE; } } |