diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2017-08-03 21:19:49 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2017-08-04 10:37:02 -0700 |
commit | 56dc8a59c917b7a7e35ae978ca92d93744a8300a (patch) | |
tree | 5be55d30d7a9cb216c21a1d365d8bbb9a22da95c /opcodes | |
parent | f02fd7745d003d65fd3b981618e07b874b721d79 (diff) | |
download | gdb-users/hjl/tls.zip gdb-users/hjl/tls.tar.gz gdb-users/hjl/tls.tar.bz2 |
x86: Lookup __tls_get_addr or ___tls_get_addr onceusers/hjl/tls
Instead of checking if a symbol is __tls_get_addr or ___tls_get_addr,
we check if there is a reference to __tls_get_addr or ___tls_get_addr
before starting relocation check.
* elf32-i386.c (elf_i386_link_hash_entry): Change tls_get_addr
to 1 bit.
(elf_i386_link_hash_newfunc): Initialize tls_get_addr to 0.
(elf_i386_check_tls_transition): Check tls_get_addr directly.
(elf_i386_convert_load_reloc): Update tls_get_addr check.
(elf_i386_link_check_relocs): New function.
(bfd_elf32_bfd_link_check_relocs): New.
* elf64-x86-64.c (elf_x86_64_link_hash_entry): Change tls_get_addr
to 1 bit.
(elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 0.
(elf_x86_64_check_tls_transition): Check tls_get_addr directly.
(elf_x86_64_convert_load_reloc): Update tls_get_addr check.
(elf_x86_64_link_check_relocs): New function.
(bfd_elf64_bfd_link_check_relocs): New.
(bfd_elf32_bfd_link_check_relocs): Likewise.
Diffstat (limited to 'opcodes')
0 files changed, 0 insertions, 0 deletions