Upload Tizen:Base source
[external/binutils.git] / ld / testsuite / ld-mips-elf / tlsbin-o32.s
1         .file   1 "tlsbin-o32.s"
2         .abicalls
3         .text
4         .align  2
5         .globl  __start
6         .ent    __start
7         .type   __start,@function
8 __start:
9         .frame  $fp,16,$31
10         .mask   0x40000000,-8
11         .fmask  0x00000000,0
12         .set    noreorder
13         .cpload $25
14         .set    reorder
15         addiu   $sp,$sp,-16
16         sw      $fp,8($sp)
17         move    $fp,$sp
18         .cprestore      0
19
20         # General Dynamic
21         lw      $25,%call16(__tls_get_addr)($28)
22         addiu   $4,$28,%tlsgd(tlsvar_gd)
23         jal     $25
24
25         # Local Dynamic
26         lw      $25,%call16(__tls_get_addr)($28)
27         addiu   $4,$28,%tlsldm(tlsvar_ld)
28         jal     $25
29
30         move    $2,$2           # Arbitrary instructions
31
32         lui     $3,%dtprel_hi(tlsvar_ld)
33         addiu   $3,$3,%dtprel_lo(tlsvar_ld)
34         addu    $3,$3,$2
35
36         # Initial Exec
37         .set    push
38         .set    mips32r2
39         rdhwr   $2, $5
40         .set    pop
41         lw      $3,%gottprel(tlsvar_ie)($28)
42         addu    $3,$3,$2
43
44         # Local Exec
45         .set    push
46         .set    mips32r2
47         rdhwr   $2, $5
48         .set    pop
49         lui     $3,%tprel_hi(tlsvar_le)
50         addiu   $3,$3,%tprel_lo(tlsvar_le)
51         addu    $3,$3,$2
52
53         move    $sp,$fp
54         lw      $fp,8($sp)
55         addiu   $sp,$sp,16
56         j       $31
57         .end    __start
58
59         .globl __tls_get_addr
60 __tls_get_addr:
61         j $31
62
63         .section                .tbss,"awT",@nobits
64         .align  2
65         .global tlsvar_gd
66         .type   tlsvar_gd,@object
67         .size   tlsvar_gd,4
68 tlsvar_gd:
69         .space  4
70         .global tlsvar_ie
71         .type   tlsvar_ie,@object
72         .size   tlsvar_ie,4
73 tlsvar_ie:
74         .space  4
75
76         .section                .tdata,"awT"
77         .align  2
78         .global tlsvar_ld
79         .hidden tlsvar_ld
80         .type   tlsvar_ld,@object
81         .size   tlsvar_ld,4
82 tlsvar_ld:
83         .word   1
84         .global tlsvar_le
85         .hidden tlsvar_le
86         .type   tlsvar_le,@object
87         .size   tlsvar_le,4
88 tlsvar_le:
89         .word   1