ecp_nistp521-ppc64.S revision 1.2.2.2 1 .machine "any"
2 .text
3
4 .globl p521_felem_mul
5 .type p521_felem_mul,@function
6 .section ".opd","aw"
7 .align 3
8 p521_felem_mul:
9 .quad .p521_felem_mul,.TOC.@tocbase,0
10 .previous
11 .align 5
12 .p521_felem_mul:
13
14 mr 12,1
15 stdu 1,-16*13(1)
16
17 stxv 52,-16*12(12)
18 stxv 53,-16*11(12)
19 stxv 54,-16*10(12)
20 stxv 55,-16*9(12)
21 stxv 56,-16*8(12)
22 stxv 57,-16*7(12)
23 stxv 58,-16*6(12)
24 stxv 59,-16*5(12)
25 stxv 60,-16*4(12)
26 stxv 61,-16*3(12)
27 stxv 62,-16*2(12)
28 stxv 63,-16*1(12)
29
30 vspltisw 0,0
31
32 lxsd 13,0(4)
33 lxsd 14,8(4)
34 lxsd 15,16(4)
35 lxsd 16,24(4)
36 lxsd 17,32(4)
37 lxsd 18,40(4)
38 lxsd 19,48(4)
39 lxsd 20,56(4)
40 lxsd 21,64(4)
41
42 lxsd 3,0(5)
43 lxsd 4,8(5)
44 lxsd 5,16(5)
45 lxsd 6,24(5)
46 lxsd 7,32(5)
47 lxsd 8,40(5)
48 lxsd 9,48(5)
49 lxsd 10,56(5)
50 lxsd 11,64(5)
51
52 .long 0x12ED1823
53
54 xxpermdi 33,45,46,0b00
55 xxpermdi 34,36,35,0b00
56 .long 0x13011023
57
58 xxpermdi 34,37,36,0b00
59 .long 0x13211023
60 .long 0x132F1E63
61
62 xxpermdi 34,38,37,0b00
63 .long 0x13411023
64 xxpermdi 44,47,48,0b00
65 xxpermdi 54,36,35,0b00
66 .long 0x134CB6A3
67
68 xxpermdi 34,39,38,0b00
69 .long 0x13611023
70 xxpermdi 54,37,36,0b00
71 .long 0x136CB6E3
72 .long 0x13711EE3
73
74 xxpermdi 34,40,39,0b00
75 .long 0x13811023
76 xxpermdi 54,38,37,0b00
77 .long 0x138CB723
78
79 xxpermdi 34,41,40,0b00
80 .long 0x13A11023
81 xxpermdi 54,39,38,0b00
82 .long 0x13ACB763
83
84 xxpermdi 34,42,41,0b00
85 .long 0x13C11023
86 xxpermdi 54,40,39,0b00
87 .long 0x13CCB7A3
88
89 xxpermdi 34,43,42,0b00
90 .long 0x13E11023
91 xxpermdi 54,41,40,0b00
92 .long 0x13ECB7E3
93
94 xxpermdi 33,49,50,0b00
95 xxpermdi 34,36,35,0b00
96 .long 0x13811723
97
98 xxpermdi 34,37,36,0b00
99 .long 0x13A11763
100 .long 0x13B31F63
101
102 xxpermdi 34,38,37,0b00
103 .long 0x13C117A3
104 xxpermdi 44,51,52,0b00
105 xxpermdi 54,36,35,0b00
106 .long 0x13CCB7A3
107
108 xxpermdi 34,39,38,0b00
109 .long 0x13E117E3
110 xxpermdi 54,37,36,0b00
111 .long 0x13ECB7E3
112 .long 0x13F51FE3
113
114 li 8,0
115 li 9,1
116 mtvsrdd 33,9,8
117 .long 0x10630DC4
118 .long 0x10840DC4
119 .long 0x10A50DC4
120 .long 0x10C60DC4
121 .long 0x10E70DC4
122 .long 0x11080DC4
123 .long 0x11290DC4
124 .long 0x114A0DC4
125 .long 0x116B0DC4
126
127 .long 0x13D55FA3
128
129 xxpermdi 34,43,42,0b00
130 xxpermdi 33,52,53,0b00
131 .long 0x13A11763
132
133 xxpermdi 33,51,52,0b00
134 .long 0x13811723
135 .long 0x13954F23
136
137 xxpermdi 33,50,51,0b00
138 .long 0x136116E3
139 xxpermdi 54,41,40,0b00
140 xxpermdi 44,52,53,0b00
141 .long 0x136CB6E3
142
143 xxpermdi 33,49,50,0b00
144 .long 0x134116A3
145 xxpermdi 44,51,52,0b00
146 .long 0x134CB6A3
147 .long 0x13553EA3
148
149 xxpermdi 33,48,49,0b00
150 .long 0x13211663
151 xxpermdi 44,50,51,0b00
152 .long 0x132CB663
153
154 xxpermdi 33,47,48,0b00
155 .long 0x13011623
156 xxpermdi 44,49,50,0b00
157 .long 0x130CB623
158
159 xxpermdi 33,46,47,0b00
160 .long 0x12E115E3
161 xxpermdi 44,48,49,0b00
162 .long 0x12ECB5E3
163
164 xxpermdi 34,39,38,0b00
165 xxpermdi 33,52,53,0b00
166 .long 0x13211663
167
168 xxpermdi 33,51,52,0b00
169 .long 0x13011623
170 .long 0x13152E23
171
172 xxpermdi 33,50,51,0b00
173 .long 0x12E115E3
174 xxpermdi 54,37,36,0b00
175 xxpermdi 44,52,53,0b00
176 .long 0x12ECB5E3
177
178 stxv 55,0(3)
179 stxv 56,16(3)
180 stxv 57,32(3)
181 stxv 58,48(3)
182 stxv 59,64(3)
183 stxv 60,80(3)
184 stxv 61,96(3)
185 stxv 62,112(3)
186 stxv 63,128(3)
187
188 ld 12,0(1)
189 lxv 52,-16*12(12)
190 lxv 53,-16*11(12)
191 lxv 54,-16*10(12)
192 lxv 55,-16*9(12)
193 lxv 56,-16*8(12)
194 lxv 57,-16*7(12)
195 lxv 58,-16*6(12)
196 lxv 59,-16*5(12)
197 lxv 60,-16*4(12)
198 lxv 61,-16*3(12)
199 lxv 62,-16*2(12)
200 lxv 63,-16*1(12)
201 mr 1,12
202
203 blr
204
205
206 .globl p521_felem_square
207 .type p521_felem_square,@function
208 .section ".opd","aw"
209 .align 3
210 p521_felem_square:
211 .quad .p521_felem_square,.TOC.@tocbase,0
212 .previous
213 .align 5
214 .p521_felem_square:
215
216 mr 12,1
217 stdu 1,-16*13(1)
218
219 stxv 52,-16*12(12)
220 stxv 53,-16*11(12)
221 stxv 54,-16*10(12)
222 stxv 55,-16*9(12)
223 stxv 56,-16*8(12)
224 stxv 57,-16*7(12)
225 stxv 58,-16*6(12)
226 stxv 59,-16*5(12)
227 stxv 60,-16*4(12)
228 stxv 61,-16*3(12)
229 stxv 62,-16*2(12)
230 stxv 63,-16*1(12)
231
232 vspltisw 0,0
233
234 lxsd 13,0(4)
235 lxsd 14,8(4)
236 lxsd 15,16(4)
237 lxsd 16,24(4)
238 lxsd 17,32(4)
239 lxsd 18,40(4)
240 lxsd 19,48(4)
241 lxsd 20,56(4)
242 lxsd 21,64(4)
243
244 li 8,0
245 li 9,1
246 mtvsrdd 33,9,8
247 .long 0x106D0DC4
248 .long 0x108E0DC4
249 .long 0x10AF0DC4
250 .long 0x10D00DC4
251 .long 0x10F10DC4
252 .long 0x11120DC4
253 .long 0x11330DC4
254 .long 0x11540DC4
255 .long 0x11750DC4
256 .long 0x12ED6823
257
258 .long 0x130D2023
259
260 xxpermdi 33,45,46,0b00
261 xxpermdi 34,37,46,0b00
262 .long 0x13211023
263
264 xxpermdi 34,38,37,0b00
265 .long 0x13411023
266
267 xxpermdi 34,39,38,0b00
268 .long 0x13611023
269 .long 0x136F7EE3
270
271 xxpermdi 34,40,39,0b00
272 .long 0x13811023
273 .long 0x138F3723
274
275 xxpermdi 34,41,40,0b00
276 .long 0x13A11023
277 xxpermdi 44,47,48,0b00
278 xxpermdi 54,39,48,0b00
279 .long 0x13ACB763
280
281 xxpermdi 34,42,41,0b00
282 .long 0x13C11023
283 xxpermdi 54,40,39,0b00
284 .long 0x13CCB7A3
285
286 xxpermdi 34,43,42,0b00
287 .long 0x13E11023
288 xxpermdi 54,41,40,0b00
289 .long 0x13ECB7E3
290 .long 0x13F18FE3
291
292 .long 0x13124623
293
294 .long 0x13534EA3
295
296 .long 0x13945723
297
298 .long 0x13D55FA3
299
300 mtvsrdd 33,9,8
301 .long 0x11080DC4
302 .long 0x11290DC4
303 .long 0x114A0DC4
304 .long 0x116B0DC4
305
306 .long 0x13B45F63
307
308 .long 0x13935F23
309
310 xxpermdi 34,43,42,0b00
311 xxpermdi 33,50,51,0b00
312 .long 0x136116E3
313
314 xxpermdi 33,49,50,0b00
315 .long 0x134116A3
316
317 xxpermdi 33,48,49,0b00
318 .long 0x13211663
319 .long 0x13324E63
320
321 xxpermdi 33,47,48,0b00
322 .long 0x13011623
323 .long 0x13114E23
324
325 xxpermdi 33,46,47,0b00
326 .long 0x12E115E3
327 xxpermdi 34,41,40,0b00
328 xxpermdi 33,48,49,0b00
329 .long 0x12E115E3
330
331 stxv 55,0(3)
332 stxv 56,16(3)
333 stxv 57,32(3)
334 stxv 58,48(3)
335 stxv 59,64(3)
336 stxv 60,80(3)
337 stxv 61,96(3)
338 stxv 62,112(3)
339 stxv 63,128(3)
340
341 ld 12,0(1)
342 lxv 52,-16*12(12)
343 lxv 53,-16*11(12)
344 lxv 54,-16*10(12)
345 lxv 55,-16*9(12)
346 lxv 56,-16*8(12)
347 lxv 57,-16*7(12)
348 lxv 58,-16*6(12)
349 lxv 59,-16*5(12)
350 lxv 60,-16*4(12)
351 lxv 61,-16*3(12)
352 lxv 62,-16*2(12)
353 lxv 63,-16*1(12)
354 mr 1,12
355
356 blr
357
358
359