diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-10-27 21:23:52 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-10-27 21:23:52 +0000 |
commit | 3cede2d0b2b6cc0a06f55da7c2f8e4263ec0091e (patch) | |
tree | 784b3df52aa477e3a18f7e6d47ae5bc49959272f /test | |
parent | 529b1a43986265fb399eecd0dcbf9c409d049853 (diff) | |
download | external_llvm-3cede2d0b2b6cc0a06f55da7c2f8e4263ec0091e.zip external_llvm-3cede2d0b2b6cc0a06f55da7c2f8e4263ec0091e.tar.gz external_llvm-3cede2d0b2b6cc0a06f55da7c2f8e4263ec0091e.tar.bz2 |
Add support for R_386_TLS_GD, R_386_TLS_LE_32, R_386_TLS_IE and R_386_TLS_LE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117494 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/MC/ELF/relocation-386.s | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/MC/ELF/relocation-386.s b/test/MC/ELF/relocation-386.s index 06885fdf..a3e07f5 100644 --- a/test/MC/ELF/relocation-386.s +++ b/test/MC/ELF/relocation-386.s @@ -50,6 +50,33 @@ // CHECK-NEXT: ('r_type', 0x00000003 // CHECK-NEXT: ), +// Relocation 5 (foo@TLSGD) is of type R_386_TLS_GD +// CHECK-NEXT: # Relocation 0x00000005 +// CHECK-NEXT: (('r_offset', 0x00000020) +// CHECK-NEXT: ('r_sym', 0x0000000b) +// CHECK-NEXT: ('r_type', 0x00000012) +// CHECK-NEXT: ), + +// Relocation 6 ($foo@TPOFF) is of type R_386_TLS_LE_32 +// CHECK-NEXT: # Relocation 0x00000006 +// CHECK-NEXT: (('r_offset', 0x00000025) +// CHECK-NEXT: ('r_sym', 0x0000000b) +// CHECK-NEXT: ('r_type', 0x00000022) +// CHECK-NEXT: ), + +// Relocation 7 (foo@INDNTPOFF) is of type R_386_TLS_IE +// CHECK-NEXT: # Relocation 0x00000007 +// CHECK-NEXT: (('r_offset', 0x0000002b) +// CHECK-NEXT: ('r_sym', 0x0000000b) +// CHECK-NEXT: ('r_type', 0x0000000f) +// CHECK-NEXT: ), + +// Relocation 8 (foo@NTPOFF) is of type R_386_TLS_LE +// CHECK-NEXT: # Relocation 0x00000008 +// CHECK-NEXT: (('r_offset', 0x00000031) +// CHECK-NEXT: ('r_sym', 0x0000000b) +// CHECK-NEXT: ('r_type', 0x00000011) + .text bar: leal .Lfoo@GOTOFF(%ebx), %eax @@ -66,6 +93,11 @@ bar2: movl bar2j@GOT(%eax), %eax + leal foo@TLSGD(, %ebx,1), %eax + movl $foo@TPOFF, %edx + movl foo@INDNTPOFF, %ecx + addl foo@NTPOFF(%eax), %eax + .section .rodata.str1.16,"aMS",@progbits,1 .Lfoo: .asciz "bool llvm::llvm_start_multithreaded()" |