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.
24 lines
506 B
Text
24 lines
506 B
Text
|
|
.*: file format .*
|
|
|
|
#
|
|
# The GOT layout is:
|
|
#
|
|
# - 2 reserved entries
|
|
# - 5 local page entries
|
|
# - 1 global entry for "undef"
|
|
# - 4 TLS entries
|
|
#
|
|
# The order of the TLS entries is:
|
|
#
|
|
# foo0 (offset 0x20)
|
|
# foo2 (offset 0x24)
|
|
# foo3 (offset 0x28)
|
|
# foo1 (offset 0x2c)
|
|
#
|
|
# Any order would be acceptable, but it must match the .d dump.
|
|
#
|
|
Contents of section \.got:
|
|
90000 00000000 80000000 00000000 00000000 .*
|
|
90010 00000000 00000000 00000000 00000000 .*
|
|
90020 0000abc0 0000abc8 0000abcc 0000abc4 .*
|