Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / lld / test / ELF / x86-64-tls-ie-opt-local.s
blob6d067cff68a3ac285a57e70bb75ad997ec75e55c
1 // REQUIRES: x86
2 // RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
3 // RUN: ld.lld %t.o -o %t1
4 // RUN: llvm-readobj -r %t1 | FileCheck --check-prefix=NORELOC %s
5 // RUN: llvm-objdump --no-print-imm-hex -d %t1 | FileCheck --check-prefix=DISASM %s
7 // NORELOC: Relocations [
8 // NORELOC-NEXT: ]
10 // DISASM: Disassembly of section .text:
11 // DISASM-EMPTY:
12 // DISASM-NEXT: <_start>:
13 // DISASM-NEXT: movq $-8, %rax
14 // DISASM-NEXT: movq $-8, %r15
15 // DISASM-NEXT: leaq -8(%rax), %rax
16 // DISASM-NEXT: leaq -8(%r15), %r15
17 // DISASM-NEXT: addq $-8, %rsp
18 // DISASM-NEXT: addq $-8, %r12
19 // DISASM-NEXT: movq $-4, %rax
20 // DISASM-NEXT: movq $-4, %r15
21 // DISASM-NEXT: leaq -4(%rax), %rax
22 // DISASM-NEXT: leaq -4(%r15), %r15
23 // DISASM-NEXT: addq $-4, %rsp
24 // DISASM-NEXT: addq $-4, %r12
26 .section .tbss,"awT",@nobits
28 .type tls0,@object
29 .align 4
30 tls0:
31 .long 0
32 .size tls0, 4
34 .type tls1,@object
35 .align 4
36 tls1:
37 .long 0
38 .size tls1, 4
40 .section .text
41 .globl _start
42 _start:
43 movq tls0@GOTTPOFF(%rip), %rax
44 movq tls0@GOTTPOFF(%rip), %r15
45 addq tls0@GOTTPOFF(%rip), %rax
46 addq tls0@GOTTPOFF(%rip), %r15
47 addq tls0@GOTTPOFF(%rip), %rsp
48 addq tls0@GOTTPOFF(%rip), %r12
49 movq tls1@GOTTPOFF(%rip), %rax
50 movq tls1@GOTTPOFF(%rip), %r15
51 addq tls1@GOTTPOFF(%rip), %rax
52 addq tls1@GOTTPOFF(%rip), %r15
53 addq tls1@GOTTPOFF(%rip), %rsp
54 addq tls1@GOTTPOFF(%rip), %r12