OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [ld/] [testsuite/] [ld-sh/] [tlspic1.s] - Blame information for rev 816

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
        .section ".tdata", "awT", @progbits
2
        .globl sg1, sg2
3
        .globl sh1, sh2
4
        .hidden sh1, sh2
5
sg1:    .long 17
6
sg2:    .long 18
7
sl1:    .long 65
8
sl2:    .long 66
9
sh1:    .long 257
10
sh2:    .long 258
11
        .text
12
        .align  1
13
        .globl  fn1
14
        .type   fn1,@function
15
fn1:
16
        mov.l   r12,@-r15
17
        mov.l   r14,@-r15
18
        sts.l   pr,@-r15
19
        mova    .L3,r0
20
        mov.l   .L3,r12
21
        add     r0,r12
22
        mov     r15,r14
23
        nop;nop;nop;nop
24
 
25
        ! GD
26
        mov.l   1f,r4
27
        mova    2f,r0
28
        mov.l   2f,r1
29
        add     r0,r1
30
        jsr     @r1
31
        add     r12,r4
32
        bra     3f
33
        nop
34
        .align  2
35
1:      .long   sg1@TLSGD
36
2:      .long   __tls_get_addr@PLT
37
3:
38
        nop;nop;nop;nop
39
 
40
        ! GD -> IE because variable is referenced through @GOTTPOFF too
41
        mov.l   1f,r4
42
        mova    2f,r0
43
        mov.l   2f,r1
44
        add     r0,r1
45
        jsr     @r1
46
        add     r12,r4
47
        bra     3f
48
        nop
49
        .align  2
50
1:      .long   sg2@TLSGD
51
2:      .long   __tls_get_addr@PLT
52
3:
53
        nop;nop;nop;nop
54
 
55
        ! GD against local variable
56
        mov.l   1f,r4
57
        mova    2f,r0
58
        mov.l   2f,r1
59
        add     r0,r1
60
        jsr     @r1
61
        add     r12,r4
62
        bra     3f
63
        nop
64
        .align  2
65
1:      .long   sl1@TLSGD
66
2:      .long   __tls_get_addr@PLT
67
3:
68
        nop;nop;nop;nop
69
 
70
        ! GD -> IE against local variable referenced through @GOTTPOFF too
71
        mov.l   1f,r4
72
        mova    2f,r0
73
        mov.l   2f,r1
74
        add     r0,r1
75
        jsr     @r1
76
        add     r12,r4
77
        bra     3f
78
        nop
79
        .align  2
80
1:      .long   sl2@TLSGD
81
2:      .long   __tls_get_addr@PLT
82
3:
83
        nop;nop;nop;nop
84
 
85
        ! GD against hidden and local variable
86
        mov.l   1f,r4
87
        mova    2f,r0
88
        mov.l   2f,r1
89
        add     r0,r1
90
        jsr     @r1
91
        add     r12,r4
92
        bra     3f
93
        nop
94
        .align  2
95
1:      .long   sh1@TLSGD
96
2:      .long   __tls_get_addr@PLT
97
3:
98
        nop;nop;nop;nop
99
 
100
        ! GD -> IE against hidden and local variable referenced through
101
        ! @GOTTPOFF too
102
        mov.l   1f,r4
103
        mova    2f,r0
104
        mov.l   2f,r1
105
        add     r0,r1
106
        jsr     @r1
107
        add     r12,r4
108
        bra     3f
109
        nop
110
        .align  2
111
1:      .long   sh2@TLSGD
112
2:      .long   __tls_get_addr@PLT
113
3:
114
        nop;nop;nop;nop
115
 
116
        ! GD against hidden but not local variable
117
        mov.l   1f,r4
118
        mova    2f,r0
119
        mov.l   2f,r1
120
        add     r0,r1
121
        jsr     @r1
122
        add     r12,r4
123
        bra     3f
124
        nop
125
        .align  2
126
1:      .long   sH1@TLSGD
127
2:      .long   __tls_get_addr@PLT
128
3:
129
        nop;nop;nop;nop
130
 
131
        ! GD -> IE against hidden but not local variable referenced through
132
        ! @GOTTPOFF too
133
        mov.l   1f,r4
134
        mova    2f,r0
135
        mov.l   2f,r1
136
        add     r0,r1
137
        jsr     @r1
138
        add     r12,r4
139
        bra     3f
140
        nop
141
        .align  2
142
1:      .long   sH2@TLSGD
143
2:      .long   __tls_get_addr@PLT
144
3:
145
        nop;nop;nop;nop
146
 
147
        ! LD
148
        mov.l   1f,r4
149
        mova    2f,r0
150
        mov.l   2f,r1
151
        add     r0,r1
152
        jsr     @r1
153
        add     r12,r4
154
        bra     3f
155
        nop
156
        .align  2
157
1:      .long   sl1@TLSLDM
158
2:      .long   __tls_get_addr@PLT
159
3:
160
        nop;nop
161
        mov.l   .L4,r1
162
        add     r0,r1
163
        nop;nop
164
        mov.l   .L5,r2
165
        add     r0,r2
166
        nop;nop;nop;nop
167
 
168
        ! LD against hidden and local variables
169
        mov.l   1f,r4
170
        mova    2f,r0
171
        mov.l   2f,r1
172
        add     r0,r1
173
        jsr     @r1
174
        add     r12,r4
175
        bra     3f
176
        nop
177
        .align  2
178
1:      .long   sl1@TLSLDM
179
2:      .long   __tls_get_addr@PLT
180
3:
181
        nop;nop
182
        mov.l   .L6,r1
183
        add     r0,r1
184
        nop;nop
185
        mov.l   .L7,r2
186
        add     r0,r2
187
        nop;nop;nop;nop
188
 
189
        ! LD against hidden but not local variables
190
        mov.l   1f,r4
191
        mova    2f,r0
192
        mov.l   2f,r1
193
        add     r0,r1
194
        jsr     @r1
195
        add     r12,r4
196
        bra     3f
197
        nop
198
        .align  2
199
1:      .long   sH1@TLSLDM
200
2:      .long   __tls_get_addr@PLT
201
3:
202
        nop;nop
203
        mov.l   .L8,r1
204
        add     r0,r1
205
        nop;nop
206
        mov.l   .L9,r2
207
        add     r0,r2
208
        nop;nop;nop;nop
209
 
210
        ! @GOTTPOFF IE against global var
211
        mov.l   1f,r0
212
        stc     gbr,r1
213
        mov.l   @(r0,r12),r0
214
        bra     2f
215
        add     r0,r1
216
        .align  2
217
1:      .long   sg2@GOTTPOFF
218
2:
219
        nop;nop;nop;nop
220
 
221
        ! @GOTTPOFF IE against local var
222
        mov.l   1f,r0
223
        stc     gbr,r1
224
        mov.l   @(r0,r12),r0
225
        bra     2f
226
        add     r0,r1
227
        .align  2
228
1:      .long   sl2@GOTTPOFF
229
2:
230
        nop;nop;nop;nop
231
 
232
        ! @GOTTPOFF IE against hidden and local var
233
        mov.l   1f,r0
234
        stc     gbr,r1
235
        mov.l   @(r0,r12),r0
236
        bra     2f
237
        add     r0,r1
238
        .align  2
239
1:      .long   sh2@GOTTPOFF
240
2:
241
        nop;nop;nop;nop
242
 
243
        ! @GOTTPOFF IE against hidden but not local var
244
        mov.l   1f,r0
245
        stc     gbr,r1
246
        mov.l   @(r0,r12),r0
247
        bra     2f
248
        add     r0,r1
249
        .align  2
250
1:      .long   sH2@GOTTPOFF
251
2:
252
        nop;nop;nop;nop
253
 
254
        mov     r14,r15
255
        lds.l   @r15+,pr
256
        mov.l   @r15+,r14
257
        rts
258
        mov.l   @r15+,r12
259
 
260
        .align 2
261
.L3:    .long   _GLOBAL_OFFSET_TABLE_
262
.L4:    .long   sl1@DTPOFF
263
.L5:    .long   sl1@DTPOFF + 4
264
.L6:    .long   sh1@DTPOFF
265
.L7:    .long   sh2@DTPOFF
266
.L8:    .long   sH1@DTPOFF
267
.L9:    .long   sH2@DTPOFF

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.