diff options
Diffstat (limited to 'lld/test')
| -rw-r--r-- | lld/test/ELF/aarch64-abs64-dyn.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/aarch64-tls-ie.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/combrelocs.s | 92 | ||||
| -rw-r--r-- | lld/test/ELF/gotpcrelx.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/i386-tls-ie-shared.s | 6 | ||||
| -rw-r--r-- | lld/test/ELF/mips-32.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/mips-64.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/tls-dynamic-i686.s | 4 | ||||
| -rw-r--r-- | lld/test/ELF/tls-got.s | 2 | ||||
| -rw-r--r-- | lld/test/ELF/tls-i686.s | 2 |
10 files changed, 104 insertions, 12 deletions
diff --git a/lld/test/ELF/aarch64-abs64-dyn.s b/lld/test/ELF/aarch64-abs64-dyn.s index d1242c22869..2220225d530 100644 --- a/lld/test/ELF/aarch64-abs64-dyn.s +++ b/lld/test/ELF/aarch64-abs64-dyn.s @@ -17,8 +17,8 @@ bar: // RUN: llvm-readobj -symbols -dyn-relocations %t.so | FileCheck %s // CHECK: Dynamic Relocations { -// CHECK-NEXT: {{.*}} R_AARCH64_ABS64 foo 0x0 // CHECK-NEXT: {{.*}} R_AARCH64_RELATIVE - [[BAR_ADDR:.*]] +// CHECK-NEXT: {{.*}} R_AARCH64_ABS64 foo 0x0 // CHECK-NEXT: } // CHECK: Symbols [ diff --git a/lld/test/ELF/aarch64-tls-ie.s b/lld/test/ELF/aarch64-tls-ie.s index 0462addba22..7e69055e377 100644 --- a/lld/test/ELF/aarch64-tls-ie.s +++ b/lld/test/ELF/aarch64-tls-ie.s @@ -24,8 +24,8 @@ #RELOC-NEXT: } #RELOC: Relocations [ #RELOC-NEXT: Section ({{.*}}) .rela.dyn { -#RELOC-NEXT: 0x120B0 R_AARCH64_TLS_TPREL64 foo 0x0 #RELOC-NEXT: 0x120B8 R_AARCH64_TLS_TPREL64 bar 0x0 +#RELOC-NEXT: 0x120B0 R_AARCH64_TLS_TPREL64 foo 0x0 #RELOC-NEXT: } #RELOC-NEXT:] diff --git a/lld/test/ELF/combrelocs.s b/lld/test/ELF/combrelocs.s new file mode 100644 index 00000000000..5b876ee221a --- /dev/null +++ b/lld/test/ELF/combrelocs.s @@ -0,0 +1,92 @@ +# REQUIRES: x86 + +# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o +# RUN: ld.lld -shared %t.o -o %t.out +# RUN: llvm-readobj -r --expand-relocs --dynamic-table %t.out | FileCheck %s + +# CHECK: Relocations [ +# CHECK-NEXT: Section ({{.*}}) .rela.dyn { +# CHECK-NEXT: Relocation { +# CHECK-NEXT: Offset: 0x2000 +# CHECK-NEXT: Type: R_X86_64_64 +# CHECK-NEXT: Symbol: aaa (1) +# CHECK-NEXT: Addend: 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: Relocation { +# CHECK-NEXT: Offset: 0x2018 +# CHECK-NEXT: Type: R_X86_64_64 +# CHECK-NEXT: Symbol: aaa (1) +# CHECK-NEXT: Addend: 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: Relocation { +# CHECK-NEXT: Offset: 0x2010 +# CHECK-NEXT: Type: R_X86_64_64 +# CHECK-NEXT: Symbol: bbb (2) +# CHECK-NEXT: Addend: 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: Relocation { +# CHECK-NEXT: Offset: 0x2008 +# CHECK-NEXT: Type: R_X86_64_64 +# CHECK-NEXT: Symbol: ccc (3) +# CHECK-NEXT: Addend: 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: Relocation { +# CHECK-NEXT: Offset: 0x2020 +# CHECK-NEXT: Type: R_X86_64_64 +# CHECK-NEXT: Symbol: ddd (4) +# CHECK-NEXT: Addend: 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: } +# CHECK-NEXT: ] +# CHECK: DynamicSection [ +# CHECK-NEXT: Tag +# CHECK-NOT: RELACOUNT + +# RUN: ld.lld -z nocombreloc -shared %t.o -o %t.out +# RUN: llvm-readobj -r --expand-relocs --dynamic-table %t.out | \ +# RUN: FileCheck --check-prefix=NOCOMB %s + +# NOCOMB: Relocations [ +# NOCOMB-NEXT: Section ({{.*}}) .rela.dyn { +# NOCOMB-NEXT: Relocation { +# NOCOMB-NEXT: Offset: 0x2000 +# NOCOMB-NEXT: Type: R_X86_64_64 +# NOCOMB-NEXT: Symbol: aaa (1) +# NOCOMB-NEXT: Addend: 0x0 +# NOCOMB-NEXT: } +# NOCOMB-NEXT: Relocation { +# NOCOMB-NEXT: Offset: 0x2008 +# NOCOMB-NEXT: Type: R_X86_64_64 +# NOCOMB-NEXT: Symbol: ccc (3) +# NOCOMB-NEXT: Addend: 0x0 +# NOCOMB-NEXT: } +# NOCOMB-NEXT: Relocation { +# NOCOMB-NEXT: Offset: 0x2010 +# NOCOMB-NEXT: Type: R_X86_64_64 +# NOCOMB-NEXT: Symbol: bbb (2) +# NOCOMB-NEXT: Addend: 0x0 +# NOCOMB-NEXT: } +# NOCOMB-NEXT: Relocation { +# NOCOMB-NEXT: Offset: 0x2018 +# NOCOMB-NEXT: Type: R_X86_64_64 +# NOCOMB-NEXT: Symbol: aaa (1) +# NOCOMB-NEXT: Addend: 0x0 +# NOCOMB-NEXT: } +# NOCOMB-NEXT: Relocation { +# NOCOMB-NEXT: Offset: 0x2020 +# NOCOMB-NEXT: Type: R_X86_64_64 +# NOCOMB-NEXT: Symbol: ddd (4) +# NOCOMB-NEXT: Addend: 0x0 +# NOCOMB-NEXT: } +# NOCOMB-NEXT: } +# NOCOMB-NEXT: ] +# NOCOMB: DynamicSection [ +# NOCOMB-NEXT: Tag +# NOCOMB-NOT: RELACOUNT + +.data + .quad aaa + .quad ccc + .quad bbb + .quad aaa + .quad ddd diff --git a/lld/test/ELF/gotpcrelx.s b/lld/test/ELF/gotpcrelx.s index 169a479855d..3f21c815568 100644 --- a/lld/test/ELF/gotpcrelx.s +++ b/lld/test/ELF/gotpcrelx.s @@ -24,7 +24,7 @@ movl bar@GOTPCREL(%rip), %eax // CHECK: Relocations [ // CHECK-NEXT: Section ({{.*}}) .rela.dyn { -// CHECK-NEXT: 0x2090 R_X86_64_GLOB_DAT foo 0x0 // CHECK-NEXT: 0x2098 R_X86_64_GLOB_DAT bar 0x0 +// CHECK-NEXT: 0x2090 R_X86_64_GLOB_DAT foo 0x0 // CHECK-NEXT: } // CHECK-NEXT: ] diff --git a/lld/test/ELF/i386-tls-ie-shared.s b/lld/test/ELF/i386-tls-ie-shared.s index c45baab103c..a2c25e2d2f8 100644 --- a/lld/test/ELF/i386-tls-ie-shared.s +++ b/lld/test/ELF/i386-tls-ie-shared.s @@ -24,16 +24,16 @@ // GOTRELSHARED: Relocations [ // GOTRELSHARED-NEXT: Section ({{.*}}) .rel.dyn { // GOTRELSHARED-NEXT: 0x2002 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x1050 R_386_TLS_TPOFF tlslocal0 0x0 // GOTRELSHARED-NEXT: 0x200A R_386_RELATIVE - 0x0 // GOTRELSHARED-NEXT: 0x2013 R_386_RELATIVE - 0x0 // GOTRELSHARED-NEXT: 0x201C R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x1054 R_386_TLS_TPOFF tlslocal1 0x0 // GOTRELSHARED-NEXT: 0x2024 R_386_RELATIVE - 0x0 // GOTRELSHARED-NEXT: 0x202D R_386_RELATIVE - 0x0 // GOTRELSHARED-NEXT: 0x2036 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x1058 R_386_TLS_TPOFF tlsshared0 0x0 // GOTRELSHARED-NEXT: 0x203F R_386_RELATIVE - 0x0 +// GOTRELSHARED-NEXT: 0x1050 R_386_TLS_TPOFF tlslocal0 0x0 +// GOTRELSHARED-NEXT: 0x1054 R_386_TLS_TPOFF tlslocal1 0x0 +// GOTRELSHARED-NEXT: 0x1058 R_386_TLS_TPOFF tlsshared0 0x0 // GOTRELSHARED-NEXT: 0x105C R_386_TLS_TPOFF tlsshared1 0x0 // GOTRELSHARED-NEXT: } // GOTRELSHARED-NEXT: ] diff --git a/lld/test/ELF/mips-32.s b/lld/test/ELF/mips-32.s index 6622aeaa278..7875c48d64d 100644 --- a/lld/test/ELF/mips-32.s +++ b/lld/test/ELF/mips-32.s @@ -47,8 +47,8 @@ v2: # REL: Relocations [ # REL-NEXT: Section (7) .rel.dyn { -# REL-NEXT: 0x30004 R_MIPS_REL32 v2 0x0 # REL-NEXT: 0x30008 R_MIPS_REL32 - 0x0 +# REL-NEXT: 0x30004 R_MIPS_REL32 v2 0x0 # REL-NEXT: } # REL-NEXT: ] diff --git a/lld/test/ELF/mips-64.s b/lld/test/ELF/mips-64.s index d4a8df31eb2..3d5c16a8a6f 100644 --- a/lld/test/ELF/mips-64.s +++ b/lld/test/ELF/mips-64.s @@ -36,8 +36,8 @@ v2: # CHECK: Relocations [ # CHECK-NEXT: Section (7) .rela.dyn { -# CHECK-NEXT: 0x30008 R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE v2 0x8 # CHECK-NEXT: 0x30010 R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE - 0x30000 +# CHECK-NEXT: 0x30008 R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE v2 0x8 # CHECK-NEXT: } # CHECK-NEXT: ] diff --git a/lld/test/ELF/tls-dynamic-i686.s b/lld/test/ELF/tls-dynamic-i686.s index 5d17d7cb21f..4db6278ca21 100644 --- a/lld/test/ELF/tls-dynamic-i686.s +++ b/lld/test/ELF/tls-dynamic-i686.s @@ -67,12 +67,12 @@ addl tls1@gotntpoff(%ebx),%eax // CHECK: Relocations [ // CHECK: Section ({{.+}}) .rel.dyn { +// CHECK-NEXT: 0x2078 R_386_TLS_DTPMOD32 - 0x0 // CHECK-NEXT: 0x2068 R_386_TLS_DTPMOD32 tls0 0x0 // CHECK-NEXT: 0x206C R_386_TLS_DTPOFF32 tls0 0x0 +// CHECK-NEXT: 0x2080 R_386_TLS_TPOFF tls0 0x0 // CHECK-NEXT: 0x2070 R_386_TLS_DTPMOD32 tls1 0x0 // CHECK-NEXT: 0x2074 R_386_TLS_DTPOFF32 tls1 0x0 -// CHECK-NEXT: 0x2078 R_386_TLS_DTPMOD32 - 0x0 -// CHECK-NEXT: 0x2080 R_386_TLS_TPOFF tls0 0x0 // CHECK-NEXT: 0x2084 R_386_TLS_TPOFF tls1 0x0 // CHECK-NEXT: } diff --git a/lld/test/ELF/tls-got.s b/lld/test/ELF/tls-got.s index aa024519a64..f36d94e40cb 100644 --- a/lld/test/ELF/tls-got.s +++ b/lld/test/ELF/tls-got.s @@ -24,8 +24,8 @@ // CHECK: Relocations [ // CHECK-NEXT: Section (4) .rela.dyn { -// CHECK-NEXT: [[ADDR]] R_X86_64_TPOFF64 tls1 0x0 // CHECK-NEXT: 0x120B8 R_X86_64_TPOFF64 tls0 0x0 +// CHECK-NEXT: [[ADDR]] R_X86_64_TPOFF64 tls1 0x0 // CHECK-NEXT: } // CHECK-NEXT: ] diff --git a/lld/test/ELF/tls-i686.s b/lld/test/ELF/tls-i686.s index 6395dde0f1a..e0a1007fde1 100644 --- a/lld/test/ELF/tls-i686.s +++ b/lld/test/ELF/tls-i686.s @@ -62,8 +62,8 @@ _start: // RELOCSHARED: Relocations [ // RELOCSHARED-NEXT: Section (4) .rel.dyn { // RELOCSHARED-NEXT: 0x2001 R_386_TLS_TPOFF32 var 0x0 -// RELOCSHARED-NEXT: 0x200F R_386_TLS_TPOFF32 var1 0x0 // RELOCSHARED-NEXT: 0x2025 R_386_TLS_TPOFF var 0x0 +// RELOCSHARED-NEXT: 0x200F R_386_TLS_TPOFF32 var1 0x0 // RELOCSHARED-NEXT: 0x2032 R_386_TLS_TPOFF var1 0x0 // RELOCSHARED-NEXT: } // RELOCSHARED-NEXT: ] |

