ead49a57e8
(mips_elf_local_got_index): Use the hash table entry to record the GOT index of forced-local symbols. (mips_elf_initialize_tls_index): Rearrange code. Store the index in either the hash table entry or the mips_got_entry, not both. Add more commentary. (mips_elf_multi_got): Make sure the g->next is nonnull when calling mips_elf_initialize_tls_index. * ld-mips-elf/tls-hidden3a.s, ld-mips-elf/tls-hidden3b.s, * ld-mips-elf/tls-hidden3.d, ld-mips-elf/tls-hidden3.got, * ld-mips-elf/tls-hidden3.ld, ld-mips-elf/tls-hidden3.r, * ld-mips-elf/tls-hidden4a.s, ld-mips-elf/tls-hidden4b.s, * ld-mips-elf/tls-hidden4.got, ld-mips-elf/tls-hidden4.r: New tests. * ld-mips-elf/mips-elf.exp: Run them.
28 lines
578 B
Text
28 lines
578 B
Text
|
|
.*: file format .*
|
|
|
|
Contents of section \.got:
|
|
#
|
|
# The order of the TLS entries in this GOT is:
|
|
#
|
|
# foo2
|
|
# foo3
|
|
# foo0
|
|
# foo1
|
|
#
|
|
# The order and address don't matter; the important thing is that the
|
|
# addresses match the relocs in the .r dump and that there is a separate
|
|
# entry for each symbol.
|
|
#
|
|
#...
|
|
1c4080 0000abc8 0000abcc 0000abc0 0000abc4 .*
|
|
#
|
|
# Likewise, but the order of the entries in this GOT is:
|
|
#
|
|
# foo3
|
|
# foo2
|
|
# foo0
|
|
# foo1
|
|
#...
|
|
1d00c0 00000000 00000000 00000000 0000abcc .*
|
|
1d00d0 0000abc8 0000abc0 0000abc4 .*
|