Commit | Line | Data |
---|---|---|
39eeab25 AM |
1 | .section .toc,"aw" |
2 | .p2align 4 | |
3 | x4t: | |
4 | .quad x4 | |
5 | x5t: | |
6 | .quad x5 | |
7 | x6t: | |
8 | .quad x6 | |
9 | ||
10 | .section .sdata,"aw" | |
11 | .p2align 4 | |
12 | x1: | |
13 | .quad 1 | |
14 | x2: | |
15 | .quad 2 | |
16 | x3: | |
17 | .quad 3 | |
18 | x4: | |
19 | .quad 4 | |
20 | x5: | |
21 | .quad 5 | |
22 | x6: | |
23 | .quad 6 | |
24 | ||
25 | .globl _start | |
26 | .text | |
27 | _start: | |
28 | # no need for got entry, optimise to nop,addi | |
39eeab25 AM |
29 | addis 9,2,x1@got@ha |
30 | ld 9,x1@got@l(9) | |
31 | # must keep got entry, optimise to nop,addi,ld | |
32 | addis 4,2,x2@got@ha | |
33 | addi 5,4,x2@got@l | |
34 | ld 6,0(5) | |
35 | # can't optimise due to possibility that r28 isn't dead | |
36 | addis 28,2,x1@got@ha | |
37 | ldu 9,x1@got@l(28) | |
38 | # no need for toc entry, optimise to nop,addi | |
39 | addis 9,2,x4t@toc@ha | |
40 | ld 9,x4t@toc@l(9) | |
41 | # must keep toc entry, optimise to nop,addi,ld | |
42 | # if we had a reloc tying the ld to x5/x5t then we could throw away | |
43 | # the toc entry and optimise to nop,nop,addi | |
44 | addis 4,2,x5t@toc@ha | |
45 | addi 5,4,x5t@toc@l | |
46 | ld 6,0(5) | |
47 | # can't optimise due to possibility that r28 isn't dead | |
48 | addis 28,2,x4t@toc@ha | |
49 | ldu 9,x4t@toc@l(28) | |
50 | ||
51 | addis 4,2,x2@got@ha | |
52 | addi 5,4,x2@got@l | |
53 | lwz 6,0(5) | |
54 | addis 9,2,x4t@toc@ha | |
55 | lwz 9,x4t@toc@l(9) | |
56 | addis 4,2,x5t@toc@ha | |
57 | addi 5,4,x5t@toc@l | |
58 | lwz 6,0(5) | |
59 | addis 28,2,x4t@toc@ha | |
60 | lwzu 9,x4t@toc@l(28) | |
61 | ||
62 | addis 4,2,x2@got@ha | |
63 | addi 5,4,x2@got@l | |
64 | lwa 6,0(5) | |
65 | addis 9,2,x4t@toc@ha | |
66 | lwa 9,x4t@toc@l(9) | |
67 | addis 4,2,x5t@toc@ha | |
68 | addi 5,4,x5t@toc@l | |
69 | lwa 6,0(5) | |
70 | ||
71 | addis 4,2,x2@got@ha | |
72 | addi 5,4,x2@got@l | |
73 | lhz 6,0(5) | |
74 | addis 9,2,x4t@toc@ha | |
75 | lhz 9,x4t@toc@l(9) | |
76 | addis 4,2,x5t@toc@ha | |
77 | addi 5,4,x5t@toc@l | |
78 | lhz 6,0(5) | |
79 | addis 28,2,x4t@toc@ha | |
80 | lhzu 9,x4t@toc@l(28) | |
81 | ||
82 | addis 4,2,x2@got@ha | |
83 | addi 5,4,x2@got@l | |
84 | lha 6,0(5) | |
85 | addis 9,2,x4t@toc@ha | |
86 | lha 9,x4t@toc@l(9) | |
87 | addis 4,2,x5t@toc@ha | |
88 | addi 5,4,x5t@toc@l | |
89 | lha 6,0(5) | |
90 | ||
91 | addis 4,2,x2@got@ha | |
92 | addi 5,4,x2@got@l | |
93 | lbz 6,0(5) | |
94 | addis 9,2,x4t@toc@ha | |
95 | lbz 9,x4t@toc@l(9) | |
96 | addis 4,2,x5t@toc@ha | |
97 | addi 5,4,x5t@toc@l | |
98 | lbz 6,0(5) | |
99 | addis 28,2,x4t@toc@ha | |
100 | lbzu 9,x4t@toc@l(28) | |
101 | ||
102 | addis 4,2,x2@got@ha | |
103 | addi 5,4,x2@got@l | |
104 | lfs 6,0(5) | |
105 | addis 9,2,x4t@toc@ha | |
106 | lfs 9,x4t@toc@l(9) | |
107 | addis 4,2,x5t@toc@ha | |
108 | addi 5,4,x5t@toc@l | |
109 | lfs 6,0(5) | |
110 | addis 28,2,x4t@toc@ha | |
111 | lfsu 9,x4t@toc@l(28) | |
112 | ||
113 | addis 4,2,x2@got@ha | |
114 | addi 5,4,x2@got@l | |
115 | lfd 6,0(5) | |
116 | addis 9,2,x4t@toc@ha | |
117 | lfd 9,x4t@toc@l(9) | |
118 | addis 4,2,x5t@toc@ha | |
119 | addi 5,4,x5t@toc@l | |
120 | lfd 6,0(5) | |
121 | addis 28,2,x4t@toc@ha | |
122 | lfdu 9,x4t@toc@l(28) | |
123 | ||
124 | addis 4,2,x2@got@ha | |
125 | addi 5,4,x2@got@l | |
126 | lxv 6,0(5) | |
127 | addis 9,2,x4t@toc@ha | |
128 | lxv 9,x4t@toc@l(9) | |
129 | addis 4,2,x6t@toc@ha | |
130 | addi 5,4,x6t@toc@l | |
131 | lxv 6,0(5) | |
132 | ||
133 | addis 4,2,x2@got@ha | |
134 | addi 5,4,x2@got@l | |
135 | lxsd 6,0(5) | |
136 | addis 9,2,x4t@toc@ha | |
137 | lxsd 9,x4t@toc@l(9) | |
138 | addis 4,2,x5t@toc@ha | |
139 | addi 5,4,x5t@toc@l | |
140 | lxsd 6,0(5) | |
141 | ||
142 | addis 4,2,x2@got@ha | |
143 | addi 5,4,x2@got@l | |
144 | lxssp 6,0(5) | |
145 | addis 9,2,x4t@toc@ha | |
146 | lxssp 9,x4t@toc@l(9) | |
147 | addis 4,2,x5t@toc@ha | |
148 | addi 5,4,x5t@toc@l | |
149 | lxssp 6,0(5) | |
150 | ||
151 | addis 9,2,x4t@toc@ha | |
152 | std 9,x4t@toc@l(9) | |
153 | addis 4,2,x5t@toc@ha | |
154 | addi 5,4,x5t@toc@l | |
155 | std 6,0(5) | |
156 | addis 28,2,x4t@toc@ha | |
157 | stdu 9,x4t@toc@l(28) | |
158 | ||
159 | addis 9,2,x4t@toc@ha | |
160 | stw 9,x4t@toc@l(9) | |
161 | addis 4,2,x5t@toc@ha | |
162 | addi 5,4,x5t@toc@l | |
163 | stw 6,0(5) | |
164 | addis 28,2,x4t@toc@ha | |
165 | stwu 9,x4t@toc@l(28) | |
166 | ||
167 | addis 9,2,x4t@toc@ha | |
168 | sth 9,x4t@toc@l(9) | |
169 | addis 4,2,x5t@toc@ha | |
170 | addi 5,4,x5t@toc@l | |
171 | sth 6,0(5) | |
172 | addis 28,2,x4t@toc@ha | |
173 | sthu 9,x4t@toc@l(28) | |
174 | ||
175 | addis 9,2,x4t@toc@ha | |
176 | stb 9,x4t@toc@l(9) | |
177 | addis 4,2,x5t@toc@ha | |
178 | addi 5,4,x5t@toc@l | |
179 | stb 6,0(5) | |
180 | addis 28,2,x4t@toc@ha | |
181 | stbu 9,x4t@toc@l(28) | |
182 | ||
183 | addis 9,2,x4t@toc@ha | |
184 | stfs 9,x4t@toc@l(9) | |
185 | addis 4,2,x5t@toc@ha | |
186 | addi 5,4,x5t@toc@l | |
187 | stfs 6,0(5) | |
188 | addis 28,2,x4t@toc@ha | |
189 | stfsu 9,x4t@toc@l(28) | |
190 | ||
191 | addis 9,2,x4t@toc@ha | |
192 | stfd 9,x4t@toc@l(9) | |
193 | addis 4,2,x5t@toc@ha | |
194 | addi 5,4,x5t@toc@l | |
195 | stfd 6,0(5) | |
196 | addis 28,2,x4t@toc@ha | |
197 | stfdu 9,x4t@toc@l(28) | |
198 | ||
199 | addis 9,2,x4t@toc@ha | |
200 | stxv 9,x4t@toc@l(9) | |
201 | addis 4,2,x6t@toc@ha | |
202 | addi 5,4,x6t@toc@l | |
203 | stxv 6,0(5) | |
204 | ||
205 | addis 9,2,x4t@toc@ha | |
206 | stxsd 9,x4t@toc@l(9) | |
207 | addis 4,2,x5t@toc@ha | |
208 | addi 5,4,x5t@toc@l | |
209 | stxsd 6,0(5) | |
210 | ||
211 | addis 9,2,x4t@toc@ha | |
212 | stxssp 9,x4t@toc@l(9) | |
213 | addis 4,2,x5t@toc@ha | |
214 | addi 5,4,x5t@toc@l | |
215 | stxssp 6,0(5) |