* contrib: Remove directory.
[binutils.git] / ld / testsuite / ld-x86-64 / tlsgdesc.s
blob6657e72aa6daeb7b3f5b16471a0c2a841ad91b70
1 .text
2 .globl fc1
3 .type fc1,@function
4 fc1:
5 pushq %rbp
6 movq %rsp, %rbp
7 nop;nop;nop;nop
9 /* IE against global var. */
10 movq %fs:0, %rcx
11 nop;nop
12 addq sG3@gottpoff(%rip), %rcx
13 nop;nop;nop;nop
15 /* IE against global var. */
16 movq %fs:0, %rcx
17 nop;nop
18 addq sG4@gottpoff(%rip), %rcx
19 nop;nop;nop;nop
21 /* GD, gd first. */
22 .byte 0x66
23 leaq sG1@tlsgd(%rip), %rdi
24 .word 0x6666
25 rex64
26 call __tls_get_addr@plt
27 nop;nop;nop;nop
29 leaq sG1@tlsdesc(%rip), %rax
30 call *sG1@tlscall(%rax)
31 nop;nop;nop;nop
33 /* GD, desc first. */
34 leaq sG2@tlsdesc(%rip), %rax
35 call *sG2@tlscall(%rax)
36 nop;nop;nop;nop
38 .byte 0x66
39 leaq sG2@tlsgd(%rip), %rdi
40 .word 0x6666
41 rex64
42 call __tls_get_addr@plt
43 nop;nop;nop;nop
45 /* GD -> IE, gd first, after IE use. */
46 .byte 0x66
47 leaq sG3@tlsgd(%rip), %rdi
48 .word 0x6666
49 rex64
50 call __tls_get_addr@plt
51 nop;nop;nop;nop
53 leaq sG3@tlsdesc(%rip), %rax
54 call *sG3@tlscall(%rax)
55 nop;nop;nop;nop
57 /* GD -> IE, desc first, after IE use. */
58 leaq sG4@tlsdesc(%rip), %rax
59 call *sG4@tlscall(%rax)
60 nop;nop;nop;nop
62 .byte 0x66
63 leaq sG4@tlsgd(%rip), %rdi
64 .word 0x6666
65 rex64
66 call __tls_get_addr@plt
67 nop;nop;nop;nop
69 /* GD -> IE, gd first, before IE use. */
70 .byte 0x66
71 leaq sG5@tlsgd(%rip), %rdi
72 .word 0x6666
73 rex64
74 call __tls_get_addr@plt
75 nop;nop;nop;nop
77 leaq sG5@tlsdesc(%rip), %rax
78 call *sG5@tlscall(%rax)
79 nop;nop;nop;nop
81 /* GD -> IE, desc first, before IE use. */
82 leaq sG6@tlsdesc(%rip), %rax
83 call *sG6@tlscall(%rax)
84 nop;nop;nop;nop
86 .byte 0x66
87 leaq sG6@tlsgd(%rip), %rdi
88 .word 0x6666
89 rex64
90 call __tls_get_addr@plt
91 nop;nop;nop;nop
93 /* IE against global var. */
94 movq %fs:0, %rcx
95 nop;nop
96 addq sG5@gottpoff(%rip), %rcx
97 nop;nop;nop;nop
99 /* IE against global var. */
100 movq %fs:0, %rcx
101 nop;nop
102 addq sG6@gottpoff(%rip), %rcx
103 nop;nop;nop;nop
105 leave