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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.20.1/] [ld/] [testsuite/] [ld-i386/] [tlsbin.s] - Blame information for rev 262

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
        .section ".tbss", "awT", @nobits
2
        .globl bg1, bg2, bg3, bg4, bg5, bg6, bg7, bg8
3
bg1:    .space 4
4
bg2:    .space 4
5
bg3:    .space 4
6
bg4:    .space 4
7
bg5:    .space 4
8
bg6:    .space 4
9
bg7:    .space 4
10
bg8:    .space 4
11
bl1:    .space 4
12
bl2:    .space 4
13
bl3:    .space 4
14
bl4:    .space 4
15
bl5:    .space 4
16
bl6:    .space 4
17
bl7:    .space 4
18
bl8:    .space 4
19
        .text
20
        .globl  _start
21
        .type   _start,@function
22
_start:
23
        pushl   %ebp
24
        movl    %esp, %ebp
25
        /* Set up .GOT pointer for non-pic @gottpoff sequences */
26
        call    1f
27
1:      popl    %ecx
28
        addl    $_GLOBAL_OFFSET_TABLE_+[.-1b], %ecx
29
        nop;nop;nop;nop
30
 
31
        /* @gottpoff IE against global var  */
32
        movl    %gs:0, %edx
33
        nop;nop
34
        subl    sG6@gottpoff(%ecx), %edx
35
        nop;nop;nop;nop
36
 
37
        /* @indntpoff IE against global var  */
38
        movl    %gs:0, %eax
39
        nop;nop
40
        addl    sG7@indntpoff, %eax
41
        nop;nop;nop;nop
42
 
43
        /* @indntpoff direct %gs access IE against global var  */
44
        movl    sG8@indntpoff, %edx
45
        nop;nop
46
        movl    %gs:(%edx), %eax
47
        nop;nop;nop;nop
48
 
49
        /* @gottpoff IE -> LE against global var defined in exec  */
50
        movl    %gs:0, %edx
51
        nop;nop
52
        subl    bg6@gottpoff(%ecx), %edx
53
        nop;nop;nop;nop
54
 
55
        /* @indntpoff IE -> LE against global var defined in exec */
56
        movl    %gs:0, %eax
57
        nop;nop
58
        addl    bg7@indntpoff, %eax
59
        nop;nop;nop;nop
60
 
61
        /* @indntpoff direct %gs access IE -> LE against global var defined
62
           in exec  */
63
        movl    bg8@indntpoff, %edx
64
        nop;nop
65
        movl    %gs:(%edx), %eax
66
        nop;nop;nop;nop
67
 
68
        /* @gottpoff IE -> LE against local var  */
69
        movl    %gs:0, %edx
70
        nop;nop
71
        subl    bl6@gottpoff(%ecx), %edx
72
        nop;nop;nop;nop
73
 
74
        /* @indntpoff IE -> LE against local var  */
75
        movl    %gs:0, %eax
76
        nop;nop
77
        addl    bl7@indntpoff, %eax
78
        nop;nop;nop;nop
79
 
80
        /* @indntpoff direct %gs access IE -> LE against local var  */
81
        movl    bl8@indntpoff, %edx
82
        nop;nop
83
        movl    %gs:(%edx), %eax
84
        nop;nop;nop;nop
85
 
86
        /* @gottpoff IE -> LE against hidden but not local var  */
87
        movl    %gs:0, %edx
88
        nop;nop
89
        subl    sh6@gottpoff(%ecx), %edx
90
        nop;nop;nop;nop
91
 
92
        /* @indntpoff IE -> LE against hidden but not local var  */
93
        movl    %gs:0, %eax
94
        nop;nop
95
        addl    sh7@indntpoff, %eax
96
        nop;nop;nop;nop
97
 
98
        /* @indntpoff direct %gs access IE -> LE against hidden but not
99
           local var  */
100
        movl    sh8@indntpoff, %edx
101
        nop;nop
102
        movl    %gs:(%edx), %eax
103
        nop;nop;nop;nop
104
 
105
        /* LE @tpoff, global var defined in exec  */
106
        movl    $sg1@tpoff, %edx
107
        nop;nop
108
        movl    %gs:0, %eax
109
        nop;nop
110
        subl    %edx, %eax
111
        nop;nop;nop;nop
112
 
113
        /* LE @tpoff, local var  */
114
        movl    $-1+bl1@tpoff, %eax
115
        nop;nop
116
        movl    %gs:0, %edx
117
        nop;nop
118
        subl    %eax, %edx
119
        nop;nop;nop;nop
120
 
121
        /* LE @tpoff, hidden var defined in exec  */
122
        movl    $sh1@tpoff-3, %eax
123
        nop;nop
124
        movl    %gs:0, %edx
125
        nop;nop
126
        subl    %eax, %edx
127
        nop;nop;nop;nop
128
 
129
        /* LE @ntpoff, global var defined in exec  */
130
        movl    %gs:0, %eax
131
        nop;nop
132
        leal    sg2@ntpoff(%eax), %edx
133
        nop;nop;nop;nop
134
 
135
        /* LE @ntpoff, local var, non-canonical sequence  */
136
        movl    $2+bl2@ntpoff, %eax
137
        nop;nop
138
        movl    %gs:0, %edx
139
        nop;nop
140
        addl    %eax, %edx
141
        nop;nop;nop;nop
142
 
143
        /* LE @ntpoff, hidden var defined in exec, non-canonical sequence */
144
        movl    %gs:0, %edx
145
        nop;nop
146
        addl    $sh2@ntpoff+1, %edx
147
        nop;nop;nop;nop
148
 
149
        /* Direct %gs access  */
150
 
151
        /* LE @ntpoff, global var defined in exec  */
152
        movl    %gs:sg3@ntpoff, %eax
153
        nop;nop;nop;nop
154
 
155
        /* LE @ntpoff, local var  */
156
        movl    %gs:bl3@ntpoff+3, %edx
157
        nop;nop;nop;nop
158
 
159
        /* LE @ntpoff, hidden var defined in exec  */
160
        movl    %gs:1+sh3@ntpoff, %edx
161
        nop;nop;nop;nop
162
 
163
        movl    -4(%ebp), %ebx
164
        leave
165
        ret

powered by: WebSVN 2.1.0

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