Don't resolve size relocation against non-zero TLS symbol
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 7 Feb 2013 02:15:30 +0000 (02:15 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 7 Feb 2013 02:15:30 +0000 (02:15 +0000)
commit20e52bd2b8041df10920960f5882636d420ebb13
tree2439fb32d91d14e6653079491a1f4dd4332ff8a4
parent5605a9468ae3ac8763f23b1fbb3a9e3c7c9a5155
Don't resolve size relocation against non-zero TLS symbol

bfd/

* elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
for non-zero TLS symbol.
(elf_i386_relocate_section): Don't resolve size relocation against
non-zero TLS symbol.
* elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
pc_count for non-zero TLS symbol.
(elf_x86_64_relocate_section): Don't resolve size relocation
against non-zero TLS symbol.

ld/testsuite/

* ld-size/size-10.rd: Updated.
* ld-size/size-8.rd: Likewise.
* ld-size/size32-2-i386.d: Likewise.
* ld-size/size32-2-x32.d: Likewise.
* ld-size/size32-2-x86-64.d: Likewise.
* ld-size/size64-2-x32.d: Likewise.
* ld-size/size64-2-x86-64.d: Likewise.

* ld-size/size.exp (run_time_tests): Pass --hash-styl=gnu to
linker for size-8 test.
12 files changed:
bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c
ld/testsuite/ChangeLog
ld/testsuite/ld-size/size-10.rd
ld/testsuite/ld-size/size-8.rd
ld/testsuite/ld-size/size.exp
ld/testsuite/ld-size/size32-2-i386.d
ld/testsuite/ld-size/size32-2-x32.d
ld/testsuite/ld-size/size32-2-x86-64.d
ld/testsuite/ld-size/size64-2-x32.d
ld/testsuite/ld-size/size64-2-x86-64.d