* elf32-m32c.c (m32c_offset_for_reloc): Fix local symbol
[binutils.git] / ld / testsuite / ld-frv / tls-2.s
blobf0712e32b958dd6f06e0b16234df226dcf3177be
1 .section .tbss,"awT",@nobits
2 .align 4
3 .type l, @object
4 .size l, 4
5 l:
6 .zero 4
7 .align 4
8 .globl i
9 .type i, @object
10 .size i, 4
12 .zero 4
13 .text
14 .globl _start
15 _start:
16 call #gettlsoff(l+1)
17 call #gettlsoff(l+1+4096)
18 call #gettlsoff(l+1+65536)
20 sethi.p #gottlsdeschi(l+2), gr14
21 setlo #gottlsdesclo(l+2), gr14
22 ldd #tlsdesc(l+2)@(gr15, gr14), gr8
23 calll #gettlsoff(l+2)@(gr8, gr0)
25 sethi.p #gottlsdeschi(l+2+4096), gr14
26 setlo #gottlsdesclo(l+2+4096), gr14
27 ldd #tlsdesc(l+2+4096)@(gr15, gr14), gr8
28 calll #gettlsoff(l+2+4096)@(gr8, gr0)
30 sethi.p #gottlsdeschi(l+2+65536), gr14
31 setlo #gottlsdesclo(l+2+65536), gr14
32 ldd #tlsdesc(l+2+65536)@(gr15, gr14), gr8
33 calll #gettlsoff(l+2+65536)@(gr8, gr0)
35 lddi.p @(gr15, #gottlsdesc12(l+3)), gr8
36 setlos #gottlsdesclo(l+3), gr14
37 calll #gettlsoff(l+3)@(gr8, gr0)
39 lddi.p @(gr15, #gottlsdesc12(l+3+4096)), gr8
40 setlos #gottlsdesclo(l+3+4096), gr14
41 calll #gettlsoff(l+3+4096)@(gr8, gr0)
43 lddi.p @(gr15, #gottlsdesc12(l+3+65536)), gr8
44 setlos #gottlsdesclo(l+3+65536), gr14
45 calll #gettlsoff(l+3+65536)@(gr8, gr0)
47 sethi #tlsmoffhi(l+4), gr9
48 setlo #tlsmofflo(l+4), gr9
50 sethi #tlsmoffhi(l+4+4096), gr9
51 setlo #tlsmofflo(l+4+4096), gr9
53 sethi #tlsmoffhi(l+4+65536), gr9
54 setlo #tlsmofflo(l+4+65536), gr9
56 call #gettlsoff(i+1)
57 call #gettlsoff(i+1+4096)
58 call #gettlsoff(i+1+65536)
60 sethi.p #gottlsdeschi(i+2), gr14
61 setlo #gottlsdesclo(i+2), gr14
62 ldd #tlsdesc(i+2)@(gr15, gr14), gr8
63 calll #gettlsoff(i+2)@(gr8, gr0)
65 sethi.p #gottlsdeschi(i+2+4096), gr14
66 setlo #gottlsdesclo(i+2+4096), gr14
67 ldd #tlsdesc(i+2+4096)@(gr15, gr14), gr8
68 calll #gettlsoff(i+2+4096)@(gr8, gr0)
70 sethi.p #gottlsdeschi(i+2+65536), gr14
71 setlo #gottlsdesclo(i+2+65536), gr14
72 ldd #tlsdesc(i+2+65536)@(gr15, gr14), gr8
73 calll #gettlsoff(i+2+65536)@(gr8, gr0)
75 lddi.p @(gr15, #gottlsdesc12(i+3)), gr8
76 setlos #gottlsdesclo(i+3), gr14
77 calll #gettlsoff(i+3)@(gr8, gr0)
79 lddi.p @(gr15, #gottlsdesc12(i+3+4096)), gr8
80 setlos #gottlsdesclo(i+3+4096), gr14
81 calll #gettlsoff(i+3+4096)@(gr8, gr0)
83 lddi.p @(gr15, #gottlsdesc12(i+3+65536)), gr8
84 setlos #gottlsdesclo(i+3+65536), gr14
85 calll #gettlsoff(i+3+65536)@(gr8, gr0)
87 sethi #tlsmoffhi(i+4), gr9
88 setlo #tlsmofflo(i+4), gr9
90 sethi #tlsmoffhi(i+4+4096), gr9
91 setlo #tlsmofflo(i+4+4096), gr9
93 sethi #tlsmoffhi(i+4+65536), gr9
94 setlo #tlsmofflo(i+4+65536), gr9
96 call #gettlsoff(0+1)
97 call #gettlsoff(0+1+4096)
98 call #gettlsoff(0+1+65536)
100 sethi.p #gottlsdeschi(0+2), gr14
101 setlo #gottlsdesclo(0+2), gr14
102 ldd #tlsdesc(0+2)@(gr15, gr14), gr8
103 calll #gettlsoff(0+2)@(gr8, gr0)
105 sethi.p #gottlsdeschi(0+2+4096), gr14
106 setlo #gottlsdesclo(0+2+4096), gr14
107 ldd #tlsdesc(0+2+4096)@(gr15, gr14), gr8
108 calll #gettlsoff(0+2+4096)@(gr8, gr0)
110 sethi.p #gottlsdeschi(0+2+65536), gr14
111 setlo #gottlsdesclo(0+2+65536), gr14
112 ldd #tlsdesc(0+2+65536)@(gr15, gr14), gr8
113 calll #gettlsoff(0+2+65536)@(gr8, gr0)
115 lddi.p @(gr15, #gottlsdesc12(0+3)), gr8
116 setlos #gottlsdesclo(0+3), gr14
117 calll #gettlsoff(0+3)@(gr8, gr0)
119 lddi.p @(gr15, #gottlsdesc12(0+3+4096)), gr8
120 setlos #gottlsdesclo(0+3+4096), gr14
121 calll #gettlsoff(0+3+4096)@(gr8, gr0)
123 lddi.p @(gr15, #gottlsdesc12(0+3+65536)), gr8
124 setlos #gottlsdesclo(0+3+65536), gr14
125 calll #gettlsoff(0+3+65536)@(gr8, gr0)
127 sethi #tlsmoffhi(0+4), gr9
128 setlo #tlsmofflo(0+4), gr9
130 sethi #tlsmoffhi(0+4+4096), gr9
131 setlo #tlsmofflo(0+4+4096), gr9
133 sethi #tlsmoffhi(0+4+65536), gr9
134 setlo #tlsmofflo(0+4+65536), gr9
136 call #gettlsoff(x+1)
137 call #gettlsoff(x+1+4096)
138 call #gettlsoff(x+1+65536)
140 sethi.p #gottlsdeschi(x+2), gr14
141 setlo #gottlsdesclo(x+2), gr14
142 ldd #tlsdesc(x+2)@(gr15, gr14), gr8
143 calll #gettlsoff(x+2)@(gr8, gr0)
145 sethi.p #gottlsdeschi(x+2+4096), gr14
146 setlo #gottlsdesclo(x+2+4096), gr14
147 ldd #tlsdesc(x+2+4096)@(gr15, gr14), gr8
148 calll #gettlsoff(x+2+4096)@(gr8, gr0)
150 sethi.p #gottlsdeschi(x+2+65536), gr14
151 setlo #gottlsdesclo(x+2+65536), gr14
152 ldd #tlsdesc(x+2+65536)@(gr15, gr14), gr8
153 calll #gettlsoff(x+2+65536)@(gr8, gr0)
155 lddi.p @(gr15, #gottlsdesc12(x+3)), gr8
156 setlos #gottlsdesclo(x+3), gr14
157 calll #gettlsoff(x+3)@(gr8, gr0)
159 lddi.p @(gr15, #gottlsdesc12(x+3+4096)), gr8
160 setlos #gottlsdesclo(x+3+4096), gr14
161 calll #gettlsoff(x+3+4096)@(gr8, gr0)
163 lddi.p @(gr15, #gottlsdesc12(x+3+65536)), gr8
164 setlos #gottlsdesclo(x+3+65536), gr14
165 calll #gettlsoff(x+3+65536)@(gr8, gr0)
167 .ifdef static_tls
168 ldi @(gr15, #gottlsoff12(l+1)), gr9
169 ldi @(gr15, #gottlsoff12(l+1+65536)), gr9
170 ldi @(gr15, #gottlsoff12(i+1)), gr9
171 ldi @(gr15, #gottlsoff12(i+1+65536)), gr9
172 ldi @(gr15, #gottlsoff12(0+1)), gr9
173 ldi @(gr15, #gottlsoff12(0+1+65536)), gr9
174 ldi @(gr15, #gottlsoff12(x+1)), gr9
175 ldi @(gr15, #gottlsoff12(x+1+65536)), gr9
177 setlos #gottlsofflo(l+1+4096), gr8
178 ld #tlsoff(l+1+4096)@(gr15, gr8), gr9
180 sethi #gottlsoffhi(i+1+4096), gr8
181 setlo #gottlsofflo(i+1+4096), gr8
182 ld #tlsoff(i+1+4096)@(gr15, gr8), gr9
183 .endif