diff options
author | Jakub Jelinek <jakub@redhat.com> | 2002-10-01 10:43:37 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2002-10-01 10:43:37 +0000 |
commit | 7c445aa3c80222dfc679ab112c864d674b805ec3 (patch) | |
tree | d2a5cc64d387f4bf51ad2c854946c0ae9abd5cb9 /ld/testsuite/ld-i386 | |
parent | abcf1d5247efcdfec46b9a0b5a268fdf65b3fdb0 (diff) | |
download | gdb-7c445aa3c80222dfc679ab112c864d674b805ec3.zip gdb-7c445aa3c80222dfc679ab112c864d674b805ec3.tar.gz gdb-7c445aa3c80222dfc679ab112c864d674b805ec3.tar.bz2 |
bfd/
* elf32-i386.c (elf_i386_relocate_section): Fix
movl foo@indntpoff, %eax IE->LE transition.
ld/testsuite/
* ld-i386/i386.exp: Add tlsindntpoff test.
* ld-i386/tlsindntpoff.s: New test.
* ld-i386/tlsindntpoff.dd: New test.
Diffstat (limited to 'ld/testsuite/ld-i386')
-rw-r--r-- | ld/testsuite/ld-i386/i386.exp | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/tlsindntpoff.dd | 16 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/tlsindntpoff.s | 19 |
3 files changed, 37 insertions, 0 deletions
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp index 795efc2..846847e 100644 --- a/ld/testsuite/ld-i386/i386.exp +++ b/ld/testsuite/ld-i386/i386.exp @@ -55,6 +55,8 @@ set i386tests { {"TLS in debug sections" "-melf_i386" "--32" {tlsg.s} {{objdump -sj.debug_foobar tlsg.sd}} "tlsg"} + {"TLS @indntpoff with %eax" "-melf_i386" "--32" {tlsindntpoff.s} + {{objdump -drj.text tlsindntpoff.dd}} "tlsindntpoff"} {"Reloc section order" "-shared -melf_i386" "--32" {reloc.s} {{objdump -hw reloc.d}} "reloc.so"} } diff --git a/ld/testsuite/ld-i386/tlsindntpoff.dd b/ld/testsuite/ld-i386/tlsindntpoff.dd new file mode 100644 index 0000000..db20de1 --- /dev/null +++ b/ld/testsuite/ld-i386/tlsindntpoff.dd @@ -0,0 +1,16 @@ +#source: tlsindntpoff.s +#as: --32 +#ld: -melf_i386 +#objdump: -drj.text +#target: i?86-*-* + +.*: +file format elf32-i386 + +Disassembly of section .text: + +[0-9a-f]+000 <_start>: + [0-9a-f]+000: 39 d8[ ]+cmp %ebx,%eax + [0-9a-f]+002: 73 08[ ]+jae [0-9a-f]+00c <_start\+0xc> + [0-9a-f]+004: b8 fc ff ff ff[ ]+mov \$0xfffffffc,%eax + [0-9a-f]+009: 65 8b 00[ ]+mov %gs:\(%eax\),%eax + [0-9a-f]+00c: c3[ ]+ret * diff --git a/ld/testsuite/ld-i386/tlsindntpoff.s b/ld/testsuite/ld-i386/tlsindntpoff.s new file mode 100644 index 0000000..4bc93f6 --- /dev/null +++ b/ld/testsuite/ld-i386/tlsindntpoff.s @@ -0,0 +1,19 @@ + /* Force .got aligned to 4K, so it very likely gets at 0x804a100 + (0x60 bytes .tdata and 0xa0 bytes .dynamic) */ + .data + .balign 4096 + .section ".tdata", "awT", @progbits + .globl foo +foo: .long 27 + + /* Force .text aligned to 4K, so it very likely gets at 0x8049000. */ + .text + .balign 4096 + .globl _start + .type _start,@function +_start: + cmp %ebx, %eax + jae 1f + movl foo@indntpoff, %eax + movl %gs:(%eax), %eax +1: ret |