diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-06-19 16:00:33 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-06-19 16:00:33 +0000 |
commit | 4c5448074d6fce6d6c0bbaba75c4bba3f16db786 (patch) | |
tree | d4dd76714916a90e0c21847de3524735e0a56463 /ld | |
parent | 5d2c29b8d19dc84f75bfa2ce0e2f334f17b5b2e7 (diff) | |
download | gdb-4c5448074d6fce6d6c0bbaba75c4bba3f16db786.zip gdb-4c5448074d6fce6d6c0bbaba75c4bba3f16db786.tar.gz gdb-4c5448074d6fce6d6c0bbaba75c4bba3f16db786.tar.bz2 |
bfd/
2009-06-19 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_tls_transition): Add a parameter,
r_symndx. Report local symbol name on error.
(elf_i386_check_relocs): Updated. Report local symbol name on
error.
(elf_i386_gc_sweep_hook): Updated.
(elf_i386_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_tls_transition): Add a parameter,
r_symndx. Report local symbol name on error.
(elf64_x86_64_check_relocs): Updated. Report local symbol name
on error.
(elf64_x86_64_gc_sweep_hook): Updated.
(elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-06-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/i386.exp: Run tlsgd2.
* ld-i386/tlsgd2.d: New.
* ld-i386/tlsgd2.s: Likewise.
* ld-x86-64/tlsgd3.d: Updated.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/i386.exp | 1 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/tlsgd2.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/tlsgd2.s | 11 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/tlsgd3.d | 2 |
5 files changed, 26 insertions, 1 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index fbd1ff4..c7f7adb 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2009-06-19 H.J. Lu <hongjiu.lu@intel.com> + + * ld-i386/i386.exp: Run tlsgd2. + + * ld-i386/tlsgd2.d: New. + * ld-i386/tlsgd2.s: Likewise. + + * ld-x86-64/tlsgd3.d: Updated. + 2009-06-18 Dave Korn <dave.korn.cygwin@gmail.com> * ld-pe/pe-run.exp (proc test_direct_link_dll): Always pass diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp index 6f75f3a..18e8d80 100644 --- a/ld/testsuite/ld-i386/i386.exp +++ b/ld/testsuite/ld-i386/i386.exp @@ -128,6 +128,7 @@ run_dump_test "pcrel16" run_dump_test "pcrel16abs" run_dump_test "alloc" run_dump_test "warn1" +run_dump_test "tlsgd2" run_dump_test "tlsie2" run_dump_test "tlsie3" run_dump_test "tlsie4" diff --git a/ld/testsuite/ld-i386/tlsgd2.d b/ld/testsuite/ld-i386/tlsgd2.d new file mode 100644 index 0000000..136a8fa --- /dev/null +++ b/ld/testsuite/ld-i386/tlsgd2.d @@ -0,0 +1,4 @@ +#name: TLS GD->LE transition check +#as: --32 +#ld: -melf_i386 +#error: .*TLS transition from R_386_TLS_GD to R_386_TLS_LE_32 against `foo'.*failed.* diff --git a/ld/testsuite/ld-i386/tlsgd2.s b/ld/testsuite/ld-i386/tlsgd2.s new file mode 100644 index 0000000..29d9339 --- /dev/null +++ b/ld/testsuite/ld-i386/tlsgd2.s @@ -0,0 +1,11 @@ + .text + .globl _start +_start: + leal foo@TLSGD(%ebx), %eax + call ___tls_get_addr + .section .tdata,"awT",@progbits + .align 4 + .type foo, @object + .size foo, 4 +foo: + .long 100 diff --git a/ld/testsuite/ld-x86-64/tlsgd3.d b/ld/testsuite/ld-x86-64/tlsgd3.d index 40f8e3d..a8830e9 100644 --- a/ld/testsuite/ld-x86-64/tlsgd3.d +++ b/ld/testsuite/ld-x86-64/tlsgd3.d @@ -1,4 +1,4 @@ #name: TLS GD->LE transition check #as: --64 #ld: -melf_x86_64 -#error: .*TLS transition from R_X86_64_TLSGD to R_X86_64_TPOFF32 against `a local symbol'.*failed.* +#error: .*TLS transition from R_X86_64_TLSGD to R_X86_64_TPOFF32 against `foo'.*failed.* |