Fix ext lang calls to value_struct_elt.
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / tlspic.s
1 .section ".tdata", "awT", @progbits
2 .globl foo
3 foo: .long 25
4 .text
5 .globl fn
6 .type fn,@function
7 fn:
8 pushl %ebp
9 movl %esp, %ebp
10 pushl %ebx
11 pushl %eax
12 call 1f
13 1: popl %ebx
14 addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx
15
16 /* foo can be anywhere in the startup TLS */
17 movl %gs:0, %eax
18
19 /* Arbitrary instructions in between. */
20 addl $0, %esi
21
22 subl foo@GOTTPOFF(%ebx), %eax
23 /* %eax now contains &foo */
24
25 /* Now the GNU sequence. */
26 movl foo@GOTNTPOFF(%ebx), %eax
27
28 /* Arbitrary instructions in between. */
29 addl $0, %esi
30
31 movl %gs:(%eax), %eax
32 /* %eax now contains foo */
33
34 movl %gs:0, %ecx
35 addl foo@GOTNTPOFF(%ebx), %ecx
36
37 movl -4(%ebp), %ebx
38 leave
39 ret
This page took 0.044902 seconds and 4 git commands to generate.