regenerate configure
[binutils.git] / ld / testsuite / ld-i386 / tlsnopic1.s
blob80a28bf223f04eb01aaf8d1037c526bafb587f07
1 .section ".data.rel.ro", "aw", @progbits
2 /* Align, so that .got is likely at address 0x2080. */
3 .balign 4096
4 .section ".tbss", "awT", @nobits
5 bl1: .space 4
6 bl2: .space 4
7 bl3: .space 4
8 bl4: .space 4
9 bl5: .space 4
10 .text
11 /* Align, so that fn3 is likely at address 0x1000. */
12 .balign 4096
13 .globl fn3
14 .type fn3,@function
15 fn3:
16 pushl %ebp
17 movl %esp, %ebp
19 /* @indntpoff IE against global var */
20 movl %gs:0, %eax
21 nop;nop
22 addl sg1@indntpoff, %eax
23 nop;nop;nop;nop
25 /* @indntpoff direct %gs access IE against global var */
26 movl sg2@indntpoff, %edx
27 nop;nop
28 movl %gs:(%edx), %eax
29 nop;nop;nop;nop
31 /* @indntpoff IE against hidden var */
32 movl %gs:0, %eax
33 nop;nop
34 addl sh1@indntpoff, %eax
35 nop;nop;nop;nop
37 /* @indntpoff direct %gs access IE against hidden var */
38 movl sh2@indntpoff, %edx
39 nop;nop
40 movl %gs:(%edx), %eax
41 nop;nop;nop;nop
43 /* @indntpoff IE against local var */
44 movl %gs:0, %eax
45 nop;nop
46 addl bl1@indntpoff, %eax
47 nop;nop;nop;nop
49 /* @indntpoff direct %gs access IE against local var */
50 movl bl2@indntpoff, %edx
51 nop;nop
52 movl %gs:(%edx), %eax
53 nop;nop;nop;nop
55 /* LE @tpoff, global var */
56 movl $-3+sg3@tpoff, %edx
57 nop;nop
58 movl %gs:0, %eax
59 nop;nop
60 subl %edx, %eax
61 nop;nop;nop;nop
63 /* LE @tpoff, local var */
64 movl $-1+bl3@tpoff, %eax
65 nop;nop
66 movl %gs:0, %edx
67 nop;nop
68 subl %eax, %edx
69 nop;nop;nop;nop
71 /* LE @ntpoff, global var */
72 movl %gs:0, %eax
73 nop;nop
74 leal 2+sg4@ntpoff(%eax), %edx
75 nop;nop;nop;nop
77 /* LE @ntpoff, hidden var, non-canonical sequence */
78 movl $sh3@ntpoff, %eax
79 nop;nop
80 movl %gs:0, %edx
81 nop;nop
82 addl %eax, %edx
83 nop;nop;nop;nop
85 /* LE @ntpoff, local var, non-canonical sequence */
86 movl %gs:0, %edx
87 nop;nop
88 addl $bl4@ntpoff+1, %edx
89 nop;nop;nop;nop
91 /* Direct %gs access */
93 /* LE @ntpoff, global var */
94 movl %gs:sg5@ntpoff, %eax
95 nop;nop;nop;nop
97 /* LE @ntpoff, local var */
98 movl %gs:bl5@ntpoff+3, %edx
99 nop;nop;nop;nop
101 /* LE @ntpoff, hidden var */
102 movl %gs:1+sh4@ntpoff, %edx
103 nop;nop;nop;nop
105 movl -4(%ebp), %ebx
106 leave