]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blob - vendor/golang.org/x/crypto/curve25519/ladderstep_amd64.s
Initial transfer of provider code
[github/fretlink/terraform-provider-statuscake.git] / vendor / golang.org / x / crypto / curve25519 / ladderstep_amd64.s
1 // Copyright 2012 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 // This code was translated into a form compatible with 6a from the public
6 // domain sources in SUPERCOP: http://bench.cr.yp.to/supercop.html
7
8 // +build amd64,!gccgo,!appengine
9
10 #include "const_amd64.h"
11
12 // func ladderstep(inout *[5][5]uint64)
13 TEXT ·ladderstep(SB),0,$296-8
14 MOVQ inout+0(FP),DI
15
16 MOVQ 40(DI),SI
17 MOVQ 48(DI),DX
18 MOVQ 56(DI),CX
19 MOVQ 64(DI),R8
20 MOVQ 72(DI),R9
21 MOVQ SI,AX
22 MOVQ DX,R10
23 MOVQ CX,R11
24 MOVQ R8,R12
25 MOVQ R9,R13
26 ADDQ ·_2P0(SB),AX
27 ADDQ ·_2P1234(SB),R10
28 ADDQ ·_2P1234(SB),R11
29 ADDQ ·_2P1234(SB),R12
30 ADDQ ·_2P1234(SB),R13
31 ADDQ 80(DI),SI
32 ADDQ 88(DI),DX
33 ADDQ 96(DI),CX
34 ADDQ 104(DI),R8
35 ADDQ 112(DI),R9
36 SUBQ 80(DI),AX
37 SUBQ 88(DI),R10
38 SUBQ 96(DI),R11
39 SUBQ 104(DI),R12
40 SUBQ 112(DI),R13
41 MOVQ SI,0(SP)
42 MOVQ DX,8(SP)
43 MOVQ CX,16(SP)
44 MOVQ R8,24(SP)
45 MOVQ R9,32(SP)
46 MOVQ AX,40(SP)
47 MOVQ R10,48(SP)
48 MOVQ R11,56(SP)
49 MOVQ R12,64(SP)
50 MOVQ R13,72(SP)
51 MOVQ 40(SP),AX
52 MULQ 40(SP)
53 MOVQ AX,SI
54 MOVQ DX,CX
55 MOVQ 40(SP),AX
56 SHLQ $1,AX
57 MULQ 48(SP)
58 MOVQ AX,R8
59 MOVQ DX,R9
60 MOVQ 40(SP),AX
61 SHLQ $1,AX
62 MULQ 56(SP)
63 MOVQ AX,R10
64 MOVQ DX,R11
65 MOVQ 40(SP),AX
66 SHLQ $1,AX
67 MULQ 64(SP)
68 MOVQ AX,R12
69 MOVQ DX,R13
70 MOVQ 40(SP),AX
71 SHLQ $1,AX
72 MULQ 72(SP)
73 MOVQ AX,R14
74 MOVQ DX,R15
75 MOVQ 48(SP),AX
76 MULQ 48(SP)
77 ADDQ AX,R10
78 ADCQ DX,R11
79 MOVQ 48(SP),AX
80 SHLQ $1,AX
81 MULQ 56(SP)
82 ADDQ AX,R12
83 ADCQ DX,R13
84 MOVQ 48(SP),AX
85 SHLQ $1,AX
86 MULQ 64(SP)
87 ADDQ AX,R14
88 ADCQ DX,R15
89 MOVQ 48(SP),DX
90 IMUL3Q $38,DX,AX
91 MULQ 72(SP)
92 ADDQ AX,SI
93 ADCQ DX,CX
94 MOVQ 56(SP),AX
95 MULQ 56(SP)
96 ADDQ AX,R14
97 ADCQ DX,R15
98 MOVQ 56(SP),DX
99 IMUL3Q $38,DX,AX
100 MULQ 64(SP)
101 ADDQ AX,SI
102 ADCQ DX,CX
103 MOVQ 56(SP),DX
104 IMUL3Q $38,DX,AX
105 MULQ 72(SP)
106 ADDQ AX,R8
107 ADCQ DX,R9
108 MOVQ 64(SP),DX
109 IMUL3Q $19,DX,AX
110 MULQ 64(SP)
111 ADDQ AX,R8
112 ADCQ DX,R9
113 MOVQ 64(SP),DX
114 IMUL3Q $38,DX,AX
115 MULQ 72(SP)
116 ADDQ AX,R10
117 ADCQ DX,R11
118 MOVQ 72(SP),DX
119 IMUL3Q $19,DX,AX
120 MULQ 72(SP)
121 ADDQ AX,R12
122 ADCQ DX,R13
123 MOVQ $REDMASK51,DX
124 SHLQ $13,CX:SI
125 ANDQ DX,SI
126 SHLQ $13,R9:R8
127 ANDQ DX,R8
128 ADDQ CX,R8
129 SHLQ $13,R11:R10
130 ANDQ DX,R10
131 ADDQ R9,R10
132 SHLQ $13,R13:R12
133 ANDQ DX,R12
134 ADDQ R11,R12
135 SHLQ $13,R15:R14
136 ANDQ DX,R14
137 ADDQ R13,R14
138 IMUL3Q $19,R15,CX
139 ADDQ CX,SI
140 MOVQ SI,CX
141 SHRQ $51,CX
142 ADDQ R8,CX
143 ANDQ DX,SI
144 MOVQ CX,R8
145 SHRQ $51,CX
146 ADDQ R10,CX
147 ANDQ DX,R8
148 MOVQ CX,R9
149 SHRQ $51,CX
150 ADDQ R12,CX
151 ANDQ DX,R9
152 MOVQ CX,AX
153 SHRQ $51,CX
154 ADDQ R14,CX
155 ANDQ DX,AX
156 MOVQ CX,R10
157 SHRQ $51,CX
158 IMUL3Q $19,CX,CX
159 ADDQ CX,SI
160 ANDQ DX,R10
161 MOVQ SI,80(SP)
162 MOVQ R8,88(SP)
163 MOVQ R9,96(SP)
164 MOVQ AX,104(SP)
165 MOVQ R10,112(SP)
166 MOVQ 0(SP),AX
167 MULQ 0(SP)
168 MOVQ AX,SI
169 MOVQ DX,CX
170 MOVQ 0(SP),AX
171 SHLQ $1,AX
172 MULQ 8(SP)
173 MOVQ AX,R8
174 MOVQ DX,R9
175 MOVQ 0(SP),AX
176 SHLQ $1,AX
177 MULQ 16(SP)
178 MOVQ AX,R10
179 MOVQ DX,R11
180 MOVQ 0(SP),AX
181 SHLQ $1,AX
182 MULQ 24(SP)
183 MOVQ AX,R12
184 MOVQ DX,R13
185 MOVQ 0(SP),AX
186 SHLQ $1,AX
187 MULQ 32(SP)
188 MOVQ AX,R14
189 MOVQ DX,R15
190 MOVQ 8(SP),AX
191 MULQ 8(SP)
192 ADDQ AX,R10
193 ADCQ DX,R11
194 MOVQ 8(SP),AX
195 SHLQ $1,AX
196 MULQ 16(SP)
197 ADDQ AX,R12
198 ADCQ DX,R13
199 MOVQ 8(SP),AX
200 SHLQ $1,AX
201 MULQ 24(SP)
202 ADDQ AX,R14
203 ADCQ DX,R15
204 MOVQ 8(SP),DX
205 IMUL3Q $38,DX,AX
206 MULQ 32(SP)
207 ADDQ AX,SI
208 ADCQ DX,CX
209 MOVQ 16(SP),AX
210 MULQ 16(SP)
211 ADDQ AX,R14
212 ADCQ DX,R15
213 MOVQ 16(SP),DX
214 IMUL3Q $38,DX,AX
215 MULQ 24(SP)
216 ADDQ AX,SI
217 ADCQ DX,CX
218 MOVQ 16(SP),DX
219 IMUL3Q $38,DX,AX
220 MULQ 32(SP)
221 ADDQ AX,R8
222 ADCQ DX,R9
223 MOVQ 24(SP),DX
224 IMUL3Q $19,DX,AX
225 MULQ 24(SP)
226 ADDQ AX,R8
227 ADCQ DX,R9
228 MOVQ 24(SP),DX
229 IMUL3Q $38,DX,AX
230 MULQ 32(SP)
231 ADDQ AX,R10
232 ADCQ DX,R11
233 MOVQ 32(SP),DX
234 IMUL3Q $19,DX,AX
235 MULQ 32(SP)
236 ADDQ AX,R12
237 ADCQ DX,R13
238 MOVQ $REDMASK51,DX
239 SHLQ $13,CX:SI
240 ANDQ DX,SI
241 SHLQ $13,R9:R8
242 ANDQ DX,R8
243 ADDQ CX,R8
244 SHLQ $13,R11:R10
245 ANDQ DX,R10
246 ADDQ R9,R10
247 SHLQ $13,R13:R12
248 ANDQ DX,R12
249 ADDQ R11,R12
250 SHLQ $13,R15:R14
251 ANDQ DX,R14
252 ADDQ R13,R14
253 IMUL3Q $19,R15,CX
254 ADDQ CX,SI
255 MOVQ SI,CX
256 SHRQ $51,CX
257 ADDQ R8,CX
258 ANDQ DX,SI
259 MOVQ CX,R8
260 SHRQ $51,CX
261 ADDQ R10,CX
262 ANDQ DX,R8
263 MOVQ CX,R9
264 SHRQ $51,CX
265 ADDQ R12,CX
266 ANDQ DX,R9
267 MOVQ CX,AX
268 SHRQ $51,CX
269 ADDQ R14,CX
270 ANDQ DX,AX
271 MOVQ CX,R10
272 SHRQ $51,CX
273 IMUL3Q $19,CX,CX
274 ADDQ CX,SI
275 ANDQ DX,R10
276 MOVQ SI,120(SP)
277 MOVQ R8,128(SP)
278 MOVQ R9,136(SP)
279 MOVQ AX,144(SP)
280 MOVQ R10,152(SP)
281 MOVQ SI,SI
282 MOVQ R8,DX
283 MOVQ R9,CX
284 MOVQ AX,R8
285 MOVQ R10,R9
286 ADDQ ·_2P0(SB),SI
287 ADDQ ·_2P1234(SB),DX
288 ADDQ ·_2P1234(SB),CX
289 ADDQ ·_2P1234(SB),R8
290 ADDQ ·_2P1234(SB),R9
291 SUBQ 80(SP),SI
292 SUBQ 88(SP),DX
293 SUBQ 96(SP),CX
294 SUBQ 104(SP),R8
295 SUBQ 112(SP),R9
296 MOVQ SI,160(SP)
297 MOVQ DX,168(SP)
298 MOVQ CX,176(SP)
299 MOVQ R8,184(SP)
300 MOVQ R9,192(SP)
301 MOVQ 120(DI),SI
302 MOVQ 128(DI),DX
303 MOVQ 136(DI),CX
304 MOVQ 144(DI),R8
305 MOVQ 152(DI),R9
306 MOVQ SI,AX
307 MOVQ DX,R10
308 MOVQ CX,R11
309 MOVQ R8,R12
310 MOVQ R9,R13
311 ADDQ ·_2P0(SB),AX
312 ADDQ ·_2P1234(SB),R10
313 ADDQ ·_2P1234(SB),R11
314 ADDQ ·_2P1234(SB),R12
315 ADDQ ·_2P1234(SB),R13
316 ADDQ 160(DI),SI
317 ADDQ 168(DI),DX
318 ADDQ 176(DI),CX
319 ADDQ 184(DI),R8
320 ADDQ 192(DI),R9
321 SUBQ 160(DI),AX
322 SUBQ 168(DI),R10
323 SUBQ 176(DI),R11
324 SUBQ 184(DI),R12
325 SUBQ 192(DI),R13
326 MOVQ SI,200(SP)
327 MOVQ DX,208(SP)
328 MOVQ CX,216(SP)
329 MOVQ R8,224(SP)
330 MOVQ R9,232(SP)
331 MOVQ AX,240(SP)
332 MOVQ R10,248(SP)
333 MOVQ R11,256(SP)
334 MOVQ R12,264(SP)
335 MOVQ R13,272(SP)
336 MOVQ 224(SP),SI
337 IMUL3Q $19,SI,AX
338 MOVQ AX,280(SP)
339 MULQ 56(SP)
340 MOVQ AX,SI
341 MOVQ DX,CX
342 MOVQ 232(SP),DX
343 IMUL3Q $19,DX,AX
344 MOVQ AX,288(SP)
345 MULQ 48(SP)
346 ADDQ AX,SI
347 ADCQ DX,CX
348 MOVQ 200(SP),AX
349 MULQ 40(SP)
350 ADDQ AX,SI
351 ADCQ DX,CX
352 MOVQ 200(SP),AX
353 MULQ 48(SP)
354 MOVQ AX,R8
355 MOVQ DX,R9
356 MOVQ 200(SP),AX
357 MULQ 56(SP)
358 MOVQ AX,R10
359 MOVQ DX,R11
360 MOVQ 200(SP),AX
361 MULQ 64(SP)
362 MOVQ AX,R12
363 MOVQ DX,R13
364 MOVQ 200(SP),AX
365 MULQ 72(SP)
366 MOVQ AX,R14
367 MOVQ DX,R15
368 MOVQ 208(SP),AX
369 MULQ 40(SP)
370 ADDQ AX,R8
371 ADCQ DX,R9
372 MOVQ 208(SP),AX
373 MULQ 48(SP)
374 ADDQ AX,R10
375 ADCQ DX,R11
376 MOVQ 208(SP),AX
377 MULQ 56(SP)
378 ADDQ AX,R12
379 ADCQ DX,R13
380 MOVQ 208(SP),AX
381 MULQ 64(SP)
382 ADDQ AX,R14
383 ADCQ DX,R15
384 MOVQ 208(SP),DX
385 IMUL3Q $19,DX,AX
386 MULQ 72(SP)
387 ADDQ AX,SI
388 ADCQ DX,CX
389 MOVQ 216(SP),AX
390 MULQ 40(SP)
391 ADDQ AX,R10
392 ADCQ DX,R11
393 MOVQ 216(SP),AX
394 MULQ 48(SP)
395 ADDQ AX,R12
396 ADCQ DX,R13
397 MOVQ 216(SP),AX
398 MULQ 56(SP)
399 ADDQ AX,R14
400 ADCQ DX,R15
401 MOVQ 216(SP),DX
402 IMUL3Q $19,DX,AX
403 MULQ 64(SP)
404 ADDQ AX,SI
405 ADCQ DX,CX
406 MOVQ 216(SP),DX
407 IMUL3Q $19,DX,AX
408 MULQ 72(SP)
409 ADDQ AX,R8
410 ADCQ DX,R9
411 MOVQ 224(SP),AX
412 MULQ 40(SP)
413 ADDQ AX,R12
414 ADCQ DX,R13
415 MOVQ 224(SP),AX
416 MULQ 48(SP)
417 ADDQ AX,R14
418 ADCQ DX,R15
419 MOVQ 280(SP),AX
420 MULQ 64(SP)
421 ADDQ AX,R8
422 ADCQ DX,R9
423 MOVQ 280(SP),AX
424 MULQ 72(SP)
425 ADDQ AX,R10
426 ADCQ DX,R11
427 MOVQ 232(SP),AX
428 MULQ 40(SP)
429 ADDQ AX,R14
430 ADCQ DX,R15
431 MOVQ 288(SP),AX
432 MULQ 56(SP)
433 ADDQ AX,R8
434 ADCQ DX,R9
435 MOVQ 288(SP),AX
436 MULQ 64(SP)
437 ADDQ AX,R10
438 ADCQ DX,R11
439 MOVQ 288(SP),AX
440 MULQ 72(SP)
441 ADDQ AX,R12
442 ADCQ DX,R13
443 MOVQ $REDMASK51,DX
444 SHLQ $13,CX:SI
445 ANDQ DX,SI
446 SHLQ $13,R9:R8
447 ANDQ DX,R8
448 ADDQ CX,R8
449 SHLQ $13,R11:R10
450 ANDQ DX,R10
451 ADDQ R9,R10
452 SHLQ $13,R13:R12
453 ANDQ DX,R12
454 ADDQ R11,R12
455 SHLQ $13,R15:R14
456 ANDQ DX,R14
457 ADDQ R13,R14
458 IMUL3Q $19,R15,CX
459 ADDQ CX,SI
460 MOVQ SI,CX
461 SHRQ $51,CX
462 ADDQ R8,CX
463 MOVQ CX,R8
464 SHRQ $51,CX
465 ANDQ DX,SI
466 ADDQ R10,CX
467 MOVQ CX,R9
468 SHRQ $51,CX
469 ANDQ DX,R8
470 ADDQ R12,CX
471 MOVQ CX,AX
472 SHRQ $51,CX
473 ANDQ DX,R9
474 ADDQ R14,CX
475 MOVQ CX,R10
476 SHRQ $51,CX
477 ANDQ DX,AX
478 IMUL3Q $19,CX,CX
479 ADDQ CX,SI
480 ANDQ DX,R10
481 MOVQ SI,40(SP)
482 MOVQ R8,48(SP)
483 MOVQ R9,56(SP)
484 MOVQ AX,64(SP)
485 MOVQ R10,72(SP)
486 MOVQ 264(SP),SI
487 IMUL3Q $19,SI,AX
488 MOVQ AX,200(SP)
489 MULQ 16(SP)
490 MOVQ AX,SI
491 MOVQ DX,CX
492 MOVQ 272(SP),DX
493 IMUL3Q $19,DX,AX
494 MOVQ AX,208(SP)
495 MULQ 8(SP)
496 ADDQ AX,SI
497 ADCQ DX,CX
498 MOVQ 240(SP),AX
499 MULQ 0(SP)
500 ADDQ AX,SI
501 ADCQ DX,CX
502 MOVQ 240(SP),AX
503 MULQ 8(SP)
504 MOVQ AX,R8
505 MOVQ DX,R9
506 MOVQ 240(SP),AX
507 MULQ 16(SP)
508 MOVQ AX,R10
509 MOVQ DX,R11
510 MOVQ 240(SP),AX
511 MULQ 24(SP)
512 MOVQ AX,R12
513 MOVQ DX,R13
514 MOVQ 240(SP),AX
515 MULQ 32(SP)
516 MOVQ AX,R14
517 MOVQ DX,R15
518 MOVQ 248(SP),AX
519 MULQ 0(SP)
520 ADDQ AX,R8
521 ADCQ DX,R9
522 MOVQ 248(SP),AX
523 MULQ 8(SP)
524 ADDQ AX,R10
525 ADCQ DX,R11
526 MOVQ 248(SP),AX
527 MULQ 16(SP)
528 ADDQ AX,R12
529 ADCQ DX,R13
530 MOVQ 248(SP),AX
531 MULQ 24(SP)
532 ADDQ AX,R14
533 ADCQ DX,R15
534 MOVQ 248(SP),DX
535 IMUL3Q $19,DX,AX
536 MULQ 32(SP)
537 ADDQ AX,SI
538 ADCQ DX,CX
539 MOVQ 256(SP),AX
540 MULQ 0(SP)
541 ADDQ AX,R10
542 ADCQ DX,R11
543 MOVQ 256(SP),AX
544 MULQ 8(SP)
545 ADDQ AX,R12
546 ADCQ DX,R13
547 MOVQ 256(SP),AX
548 MULQ 16(SP)
549 ADDQ AX,R14
550 ADCQ DX,R15
551 MOVQ 256(SP),DX
552 IMUL3Q $19,DX,AX
553 MULQ 24(SP)
554 ADDQ AX,SI
555 ADCQ DX,CX
556 MOVQ 256(SP),DX
557 IMUL3Q $19,DX,AX
558 MULQ 32(SP)
559 ADDQ AX,R8
560 ADCQ DX,R9
561 MOVQ 264(SP),AX
562 MULQ 0(SP)
563 ADDQ AX,R12
564 ADCQ DX,R13
565 MOVQ 264(SP),AX
566 MULQ 8(SP)
567 ADDQ AX,R14
568 ADCQ DX,R15
569 MOVQ 200(SP),AX
570 MULQ 24(SP)
571 ADDQ AX,R8
572 ADCQ DX,R9
573 MOVQ 200(SP),AX
574 MULQ 32(SP)
575 ADDQ AX,R10
576 ADCQ DX,R11
577 MOVQ 272(SP),AX
578 MULQ 0(SP)
579 ADDQ AX,R14
580 ADCQ DX,R15
581 MOVQ 208(SP),AX
582 MULQ 16(SP)
583 ADDQ AX,R8
584 ADCQ DX,R9
585 MOVQ 208(SP),AX
586 MULQ 24(SP)
587 ADDQ AX,R10
588 ADCQ DX,R11
589 MOVQ 208(SP),AX
590 MULQ 32(SP)
591 ADDQ AX,R12
592 ADCQ DX,R13
593 MOVQ $REDMASK51,DX
594 SHLQ $13,CX:SI
595 ANDQ DX,SI
596 SHLQ $13,R9:R8
597 ANDQ DX,R8
598 ADDQ CX,R8
599 SHLQ $13,R11:R10
600 ANDQ DX,R10
601 ADDQ R9,R10
602 SHLQ $13,R13:R12
603 ANDQ DX,R12
604 ADDQ R11,R12
605 SHLQ $13,R15:R14
606 ANDQ DX,R14
607 ADDQ R13,R14
608 IMUL3Q $19,R15,CX
609 ADDQ CX,SI
610 MOVQ SI,CX
611 SHRQ $51,CX
612 ADDQ R8,CX
613 MOVQ CX,R8
614 SHRQ $51,CX
615 ANDQ DX,SI
616 ADDQ R10,CX
617 MOVQ CX,R9
618 SHRQ $51,CX
619 ANDQ DX,R8
620 ADDQ R12,CX
621 MOVQ CX,AX
622 SHRQ $51,CX
623 ANDQ DX,R9
624 ADDQ R14,CX
625 MOVQ CX,R10
626 SHRQ $51,CX
627 ANDQ DX,AX
628 IMUL3Q $19,CX,CX
629 ADDQ CX,SI
630 ANDQ DX,R10
631 MOVQ SI,DX
632 MOVQ R8,CX
633 MOVQ R9,R11
634 MOVQ AX,R12
635 MOVQ R10,R13
636 ADDQ ·_2P0(SB),DX
637 ADDQ ·_2P1234(SB),CX
638 ADDQ ·_2P1234(SB),R11
639 ADDQ ·_2P1234(SB),R12
640 ADDQ ·_2P1234(SB),R13
641 ADDQ 40(SP),SI
642 ADDQ 48(SP),R8
643 ADDQ 56(SP),R9
644 ADDQ 64(SP),AX
645 ADDQ 72(SP),R10
646 SUBQ 40(SP),DX
647 SUBQ 48(SP),CX
648 SUBQ 56(SP),R11
649 SUBQ 64(SP),R12
650 SUBQ 72(SP),R13
651 MOVQ SI,120(DI)
652 MOVQ R8,128(DI)
653 MOVQ R9,136(DI)
654 MOVQ AX,144(DI)
655 MOVQ R10,152(DI)
656 MOVQ DX,160(DI)
657 MOVQ CX,168(DI)
658 MOVQ R11,176(DI)
659 MOVQ R12,184(DI)
660 MOVQ R13,192(DI)
661 MOVQ 120(DI),AX
662 MULQ 120(DI)
663 MOVQ AX,SI
664 MOVQ DX,CX
665 MOVQ 120(DI),AX
666 SHLQ $1,AX
667 MULQ 128(DI)
668 MOVQ AX,R8
669 MOVQ DX,R9
670 MOVQ 120(DI),AX
671 SHLQ $1,AX
672 MULQ 136(DI)
673 MOVQ AX,R10
674 MOVQ DX,R11
675 MOVQ 120(DI),AX
676 SHLQ $1,AX
677 MULQ 144(DI)
678 MOVQ AX,R12
679 MOVQ DX,R13
680 MOVQ 120(DI),AX
681 SHLQ $1,AX
682 MULQ 152(DI)
683 MOVQ AX,R14
684 MOVQ DX,R15
685 MOVQ 128(DI),AX
686 MULQ 128(DI)
687 ADDQ AX,R10
688 ADCQ DX,R11
689 MOVQ 128(DI),AX
690 SHLQ $1,AX
691 MULQ 136(DI)
692 ADDQ AX,R12
693 ADCQ DX,R13
694 MOVQ 128(DI),AX
695 SHLQ $1,AX
696 MULQ 144(DI)
697 ADDQ AX,R14
698 ADCQ DX,R15
699 MOVQ 128(DI),DX
700 IMUL3Q $38,DX,AX
701 MULQ 152(DI)
702 ADDQ AX,SI
703 ADCQ DX,CX
704 MOVQ 136(DI),AX
705 MULQ 136(DI)
706 ADDQ AX,R14
707 ADCQ DX,R15
708 MOVQ 136(DI),DX
709 IMUL3Q $38,DX,AX
710 MULQ 144(DI)
711 ADDQ AX,SI
712 ADCQ DX,CX
713 MOVQ 136(DI),DX
714 IMUL3Q $38,DX,AX
715 MULQ 152(DI)
716 ADDQ AX,R8
717 ADCQ DX,R9
718 MOVQ 144(DI),DX
719 IMUL3Q $19,DX,AX
720 MULQ 144(DI)
721 ADDQ AX,R8
722 ADCQ DX,R9
723 MOVQ 144(DI),DX
724 IMUL3Q $38,DX,AX
725 MULQ 152(DI)
726 ADDQ AX,R10
727 ADCQ DX,R11
728 MOVQ 152(DI),DX
729 IMUL3Q $19,DX,AX
730 MULQ 152(DI)
731 ADDQ AX,R12
732 ADCQ DX,R13
733 MOVQ $REDMASK51,DX
734 SHLQ $13,CX:SI
735 ANDQ DX,SI
736 SHLQ $13,R9:R8
737 ANDQ DX,R8
738 ADDQ CX,R8
739 SHLQ $13,R11:R10
740 ANDQ DX,R10
741 ADDQ R9,R10
742 SHLQ $13,R13:R12
743 ANDQ DX,R12
744 ADDQ R11,R12
745 SHLQ $13,R15:R14
746 ANDQ DX,R14
747 ADDQ R13,R14
748 IMUL3Q $19,R15,CX
749 ADDQ CX,SI
750 MOVQ SI,CX
751 SHRQ $51,CX
752 ADDQ R8,CX
753 ANDQ DX,SI
754 MOVQ CX,R8
755 SHRQ $51,CX
756 ADDQ R10,CX
757 ANDQ DX,R8
758 MOVQ CX,R9
759 SHRQ $51,CX
760 ADDQ R12,CX
761 ANDQ DX,R9
762 MOVQ CX,AX
763 SHRQ $51,CX
764 ADDQ R14,CX
765 ANDQ DX,AX
766 MOVQ CX,R10
767 SHRQ $51,CX
768 IMUL3Q $19,CX,CX
769 ADDQ CX,SI
770 ANDQ DX,R10
771 MOVQ SI,120(DI)
772 MOVQ R8,128(DI)
773 MOVQ R9,136(DI)
774 MOVQ AX,144(DI)
775 MOVQ R10,152(DI)
776 MOVQ 160(DI),AX
777 MULQ 160(DI)
778 MOVQ AX,SI
779 MOVQ DX,CX
780 MOVQ 160(DI),AX
781 SHLQ $1,AX
782 MULQ 168(DI)
783 MOVQ AX,R8
784 MOVQ DX,R9
785 MOVQ 160(DI),AX
786 SHLQ $1,AX
787 MULQ 176(DI)
788 MOVQ AX,R10
789 MOVQ DX,R11
790 MOVQ 160(DI),AX
791 SHLQ $1,AX
792 MULQ 184(DI)
793 MOVQ AX,R12
794 MOVQ DX,R13
795 MOVQ 160(DI),AX
796 SHLQ $1,AX
797 MULQ 192(DI)
798 MOVQ AX,R14
799 MOVQ DX,R15
800 MOVQ 168(DI),AX
801 MULQ 168(DI)
802 ADDQ AX,R10
803 ADCQ DX,R11
804 MOVQ 168(DI),AX
805 SHLQ $1,AX
806 MULQ 176(DI)
807 ADDQ AX,R12
808 ADCQ DX,R13
809 MOVQ 168(DI),AX
810 SHLQ $1,AX
811 MULQ 184(DI)
812 ADDQ AX,R14
813 ADCQ DX,R15
814 MOVQ 168(DI),DX
815 IMUL3Q $38,DX,AX
816 MULQ 192(DI)
817 ADDQ AX,SI
818 ADCQ DX,CX
819 MOVQ 176(DI),AX
820 MULQ 176(DI)
821 ADDQ AX,R14
822 ADCQ DX,R15
823 MOVQ 176(DI),DX
824 IMUL3Q $38,DX,AX
825 MULQ 184(DI)
826 ADDQ AX,SI
827 ADCQ DX,CX
828 MOVQ 176(DI),DX
829 IMUL3Q $38,DX,AX
830 MULQ 192(DI)
831 ADDQ AX,R8
832 ADCQ DX,R9
833 MOVQ 184(DI),DX
834 IMUL3Q $19,DX,AX
835 MULQ 184(DI)
836 ADDQ AX,R8
837 ADCQ DX,R9
838 MOVQ 184(DI),DX
839 IMUL3Q $38,DX,AX
840 MULQ 192(DI)
841 ADDQ AX,R10
842 ADCQ DX,R11
843 MOVQ 192(DI),DX
844 IMUL3Q $19,DX,AX
845 MULQ 192(DI)
846 ADDQ AX,R12
847 ADCQ DX,R13
848 MOVQ $REDMASK51,DX
849 SHLQ $13,CX:SI
850 ANDQ DX,SI
851 SHLQ $13,R9:R8
852 ANDQ DX,R8
853 ADDQ CX,R8
854 SHLQ $13,R11:R10
855 ANDQ DX,R10
856 ADDQ R9,R10
857 SHLQ $13,R13:R12
858 ANDQ DX,R12
859 ADDQ R11,R12
860 SHLQ $13,R15:R14
861 ANDQ DX,R14
862 ADDQ R13,R14
863 IMUL3Q $19,R15,CX
864 ADDQ CX,SI
865 MOVQ SI,CX
866 SHRQ $51,CX
867 ADDQ R8,CX
868 ANDQ DX,SI
869 MOVQ CX,R8
870 SHRQ $51,CX
871 ADDQ R10,CX
872 ANDQ DX,R8
873 MOVQ CX,R9
874 SHRQ $51,CX
875 ADDQ R12,CX
876 ANDQ DX,R9
877 MOVQ CX,AX
878 SHRQ $51,CX
879 ADDQ R14,CX
880 ANDQ DX,AX
881 MOVQ CX,R10
882 SHRQ $51,CX
883 IMUL3Q $19,CX,CX
884 ADDQ CX,SI
885 ANDQ DX,R10
886 MOVQ SI,160(DI)
887 MOVQ R8,168(DI)
888 MOVQ R9,176(DI)
889 MOVQ AX,184(DI)
890 MOVQ R10,192(DI)
891 MOVQ 184(DI),SI
892 IMUL3Q $19,SI,AX
893 MOVQ AX,0(SP)
894 MULQ 16(DI)
895 MOVQ AX,SI
896 MOVQ DX,CX
897 MOVQ 192(DI),DX
898 IMUL3Q $19,DX,AX
899 MOVQ AX,8(SP)
900 MULQ 8(DI)
901 ADDQ AX,SI
902 ADCQ DX,CX
903 MOVQ 160(DI),AX
904 MULQ 0(DI)
905 ADDQ AX,SI
906 ADCQ DX,CX
907 MOVQ 160(DI),AX
908 MULQ 8(DI)
909 MOVQ AX,R8
910 MOVQ DX,R9
911 MOVQ 160(DI),AX
912 MULQ 16(DI)
913 MOVQ AX,R10
914 MOVQ DX,R11
915 MOVQ 160(DI),AX
916 MULQ 24(DI)
917 MOVQ AX,R12
918 MOVQ DX,R13
919 MOVQ 160(DI),AX
920 MULQ 32(DI)
921 MOVQ AX,R14
922 MOVQ DX,R15
923 MOVQ 168(DI),AX
924 MULQ 0(DI)
925 ADDQ AX,R8
926 ADCQ DX,R9
927 MOVQ 168(DI),AX
928 MULQ 8(DI)
929 ADDQ AX,R10
930 ADCQ DX,R11
931 MOVQ 168(DI),AX
932 MULQ 16(DI)
933 ADDQ AX,R12
934 ADCQ DX,R13
935 MOVQ 168(DI),AX
936 MULQ 24(DI)
937 ADDQ AX,R14
938 ADCQ DX,R15
939 MOVQ 168(DI),DX
940 IMUL3Q $19,DX,AX
941 MULQ 32(DI)
942 ADDQ AX,SI
943 ADCQ DX,CX
944 MOVQ 176(DI),AX
945 MULQ 0(DI)
946 ADDQ AX,R10
947 ADCQ DX,R11
948 MOVQ 176(DI),AX
949 MULQ 8(DI)
950 ADDQ AX,R12
951 ADCQ DX,R13
952 MOVQ 176(DI),AX
953 MULQ 16(DI)
954 ADDQ AX,R14
955 ADCQ DX,R15
956 MOVQ 176(DI),DX
957 IMUL3Q $19,DX,AX
958 MULQ 24(DI)
959 ADDQ AX,SI
960 ADCQ DX,CX
961 MOVQ 176(DI),DX
962 IMUL3Q $19,DX,AX
963 MULQ 32(DI)
964 ADDQ AX,R8
965 ADCQ DX,R9
966 MOVQ 184(DI),AX
967 MULQ 0(DI)
968 ADDQ AX,R12
969 ADCQ DX,R13
970 MOVQ 184(DI),AX
971 MULQ 8(DI)
972 ADDQ AX,R14
973 ADCQ DX,R15
974 MOVQ 0(SP),AX
975 MULQ 24(DI)
976 ADDQ AX,R8
977 ADCQ DX,R9
978 MOVQ 0(SP),AX
979 MULQ 32(DI)
980 ADDQ AX,R10
981 ADCQ DX,R11
982 MOVQ 192(DI),AX
983 MULQ 0(DI)
984 ADDQ AX,R14
985 ADCQ DX,R15
986 MOVQ 8(SP),AX
987 MULQ 16(DI)
988 ADDQ AX,R8
989 ADCQ DX,R9
990 MOVQ 8(SP),AX
991 MULQ 24(DI)
992 ADDQ AX,R10
993 ADCQ DX,R11
994 MOVQ 8(SP),AX
995 MULQ 32(DI)
996 ADDQ AX,R12
997 ADCQ DX,R13
998 MOVQ $REDMASK51,DX
999 SHLQ $13,CX:SI
1000 ANDQ DX,SI
1001 SHLQ $13,R9:R8
1002 ANDQ DX,R8
1003 ADDQ CX,R8
1004 SHLQ $13,R11:R10
1005 ANDQ DX,R10
1006 ADDQ R9,R10
1007 SHLQ $13,R13:R12
1008 ANDQ DX,R12
1009 ADDQ R11,R12
1010 SHLQ $13,R15:R14
1011 ANDQ DX,R14
1012 ADDQ R13,R14
1013 IMUL3Q $19,R15,CX
1014 ADDQ CX,SI
1015 MOVQ SI,CX
1016 SHRQ $51,CX
1017 ADDQ R8,CX
1018 MOVQ CX,R8
1019 SHRQ $51,CX
1020 ANDQ DX,SI
1021 ADDQ R10,CX
1022 MOVQ CX,R9
1023 SHRQ $51,CX
1024 ANDQ DX,R8
1025 ADDQ R12,CX
1026 MOVQ CX,AX
1027 SHRQ $51,CX
1028 ANDQ DX,R9
1029 ADDQ R14,CX
1030 MOVQ CX,R10
1031 SHRQ $51,CX
1032 ANDQ DX,AX
1033 IMUL3Q $19,CX,CX
1034 ADDQ CX,SI
1035 ANDQ DX,R10
1036 MOVQ SI,160(DI)
1037 MOVQ R8,168(DI)
1038 MOVQ R9,176(DI)
1039 MOVQ AX,184(DI)
1040 MOVQ R10,192(DI)
1041 MOVQ 144(SP),SI
1042 IMUL3Q $19,SI,AX
1043 MOVQ AX,0(SP)
1044 MULQ 96(SP)
1045 MOVQ AX,SI
1046 MOVQ DX,CX
1047 MOVQ 152(SP),DX
1048 IMUL3Q $19,DX,AX
1049 MOVQ AX,8(SP)
1050 MULQ 88(SP)
1051 ADDQ AX,SI
1052 ADCQ DX,CX
1053 MOVQ 120(SP),AX
1054 MULQ 80(SP)
1055 ADDQ AX,SI
1056 ADCQ DX,CX
1057 MOVQ 120(SP),AX
1058 MULQ 88(SP)
1059 MOVQ AX,R8
1060 MOVQ DX,R9
1061 MOVQ 120(SP),AX
1062 MULQ 96(SP)
1063 MOVQ AX,R10
1064 MOVQ DX,R11
1065 MOVQ 120(SP),AX
1066 MULQ 104(SP)
1067 MOVQ AX,R12
1068 MOVQ DX,R13
1069 MOVQ 120(SP),AX
1070 MULQ 112(SP)
1071 MOVQ AX,R14
1072 MOVQ DX,R15
1073 MOVQ 128(SP),AX
1074 MULQ 80(SP)
1075 ADDQ AX,R8
1076 ADCQ DX,R9
1077 MOVQ 128(SP),AX
1078 MULQ 88(SP)
1079 ADDQ AX,R10
1080 ADCQ DX,R11
1081 MOVQ 128(SP),AX
1082 MULQ 96(SP)
1083 ADDQ AX,R12
1084 ADCQ DX,R13
1085 MOVQ 128(SP),AX
1086 MULQ 104(SP)
1087 ADDQ AX,R14
1088 ADCQ DX,R15
1089 MOVQ 128(SP),DX
1090 IMUL3Q $19,DX,AX
1091 MULQ 112(SP)
1092 ADDQ AX,SI
1093 ADCQ DX,CX
1094 MOVQ 136(SP),AX
1095 MULQ 80(SP)
1096 ADDQ AX,R10
1097 ADCQ DX,R11
1098 MOVQ 136(SP),AX
1099 MULQ 88(SP)
1100 ADDQ AX,R12
1101 ADCQ DX,R13
1102 MOVQ 136(SP),AX
1103 MULQ 96(SP)
1104 ADDQ AX,R14
1105 ADCQ DX,R15
1106 MOVQ 136(SP),DX
1107 IMUL3Q $19,DX,AX
1108 MULQ 104(SP)
1109 ADDQ AX,SI
1110 ADCQ DX,CX
1111 MOVQ 136(SP),DX
1112 IMUL3Q $19,DX,AX
1113 MULQ 112(SP)
1114 ADDQ AX,R8
1115 ADCQ DX,R9
1116 MOVQ 144(SP),AX
1117 MULQ 80(SP)
1118 ADDQ AX,R12
1119 ADCQ DX,R13
1120 MOVQ 144(SP),AX
1121 MULQ 88(SP)
1122 ADDQ AX,R14
1123 ADCQ DX,R15
1124 MOVQ 0(SP),AX
1125 MULQ 104(SP)
1126 ADDQ AX,R8
1127 ADCQ DX,R9
1128 MOVQ 0(SP),AX
1129 MULQ 112(SP)
1130 ADDQ AX,R10
1131 ADCQ DX,R11
1132 MOVQ 152(SP),AX
1133 MULQ 80(SP)
1134 ADDQ AX,R14
1135 ADCQ DX,R15
1136 MOVQ 8(SP),AX
1137 MULQ 96(SP)
1138 ADDQ AX,R8
1139 ADCQ DX,R9
1140 MOVQ 8(SP),AX
1141 MULQ 104(SP)
1142 ADDQ AX,R10
1143 ADCQ DX,R11
1144 MOVQ 8(SP),AX
1145 MULQ 112(SP)
1146 ADDQ AX,R12
1147 ADCQ DX,R13
1148 MOVQ $REDMASK51,DX
1149 SHLQ $13,CX:SI
1150 ANDQ DX,SI
1151 SHLQ $13,R9:R8
1152 ANDQ DX,R8
1153 ADDQ CX,R8
1154 SHLQ $13,R11:R10
1155 ANDQ DX,R10
1156 ADDQ R9,R10
1157 SHLQ $13,R13:R12
1158 ANDQ DX,R12
1159 ADDQ R11,R12
1160 SHLQ $13,R15:R14
1161 ANDQ DX,R14
1162 ADDQ R13,R14
1163 IMUL3Q $19,R15,CX
1164 ADDQ CX,SI
1165 MOVQ SI,CX
1166 SHRQ $51,CX
1167 ADDQ R8,CX
1168 MOVQ CX,R8
1169 SHRQ $51,CX
1170 ANDQ DX,SI
1171 ADDQ R10,CX
1172 MOVQ CX,R9
1173 SHRQ $51,CX
1174 ANDQ DX,R8
1175 ADDQ R12,CX
1176 MOVQ CX,AX
1177 SHRQ $51,CX
1178 ANDQ DX,R9
1179 ADDQ R14,CX
1180 MOVQ CX,R10
1181 SHRQ $51,CX
1182 ANDQ DX,AX
1183 IMUL3Q $19,CX,CX
1184 ADDQ CX,SI
1185 ANDQ DX,R10
1186 MOVQ SI,40(DI)
1187 MOVQ R8,48(DI)
1188 MOVQ R9,56(DI)
1189 MOVQ AX,64(DI)
1190 MOVQ R10,72(DI)
1191 MOVQ 160(SP),AX
1192 MULQ ·_121666_213(SB)
1193 SHRQ $13,AX
1194 MOVQ AX,SI
1195 MOVQ DX,CX
1196 MOVQ 168(SP),AX
1197 MULQ ·_121666_213(SB)
1198 SHRQ $13,AX
1199 ADDQ AX,CX
1200 MOVQ DX,R8
1201 MOVQ 176(SP),AX
1202 MULQ ·_121666_213(SB)
1203 SHRQ $13,AX
1204 ADDQ AX,R8
1205 MOVQ DX,R9
1206 MOVQ 184(SP),AX
1207 MULQ ·_121666_213(SB)
1208 SHRQ $13,AX
1209 ADDQ AX,R9
1210 MOVQ DX,R10
1211 MOVQ 192(SP),AX
1212 MULQ ·_121666_213(SB)
1213 SHRQ $13,AX
1214 ADDQ AX,R10
1215 IMUL3Q $19,DX,DX
1216 ADDQ DX,SI
1217 ADDQ 80(SP),SI
1218 ADDQ 88(SP),CX
1219 ADDQ 96(SP),R8
1220 ADDQ 104(SP),R9
1221 ADDQ 112(SP),R10
1222 MOVQ SI,80(DI)
1223 MOVQ CX,88(DI)
1224 MOVQ R8,96(DI)
1225 MOVQ R9,104(DI)
1226 MOVQ R10,112(DI)
1227 MOVQ 104(DI),SI
1228 IMUL3Q $19,SI,AX
1229 MOVQ AX,0(SP)
1230 MULQ 176(SP)
1231 MOVQ AX,SI
1232 MOVQ DX,CX
1233 MOVQ 112(DI),DX
1234 IMUL3Q $19,DX,AX
1235 MOVQ AX,8(SP)
1236 MULQ 168(SP)
1237 ADDQ AX,SI
1238 ADCQ DX,CX
1239 MOVQ 80(DI),AX
1240 MULQ 160(SP)
1241 ADDQ AX,SI
1242 ADCQ DX,CX
1243 MOVQ 80(DI),AX
1244 MULQ 168(SP)
1245 MOVQ AX,R8
1246 MOVQ DX,R9
1247 MOVQ 80(DI),AX
1248 MULQ 176(SP)
1249 MOVQ AX,R10
1250 MOVQ DX,R11
1251 MOVQ 80(DI),AX
1252 MULQ 184(SP)
1253 MOVQ AX,R12
1254 MOVQ DX,R13
1255 MOVQ 80(DI),AX
1256 MULQ 192(SP)
1257 MOVQ AX,R14
1258 MOVQ DX,R15
1259 MOVQ 88(DI),AX
1260 MULQ 160(SP)
1261 ADDQ AX,R8
1262 ADCQ DX,R9
1263 MOVQ 88(DI),AX
1264 MULQ 168(SP)
1265 ADDQ AX,R10
1266 ADCQ DX,R11
1267 MOVQ 88(DI),AX
1268 MULQ 176(SP)
1269 ADDQ AX,R12
1270 ADCQ DX,R13
1271 MOVQ 88(DI),AX
1272 MULQ 184(SP)
1273 ADDQ AX,R14
1274 ADCQ DX,R15
1275 MOVQ 88(DI),DX
1276 IMUL3Q $19,DX,AX
1277 MULQ 192(SP)
1278 ADDQ AX,SI
1279 ADCQ DX,CX
1280 MOVQ 96(DI),AX
1281 MULQ 160(SP)
1282 ADDQ AX,R10
1283 ADCQ DX,R11
1284 MOVQ 96(DI),AX
1285 MULQ 168(SP)
1286 ADDQ AX,R12
1287 ADCQ DX,R13
1288 MOVQ 96(DI),AX
1289 MULQ 176(SP)
1290 ADDQ AX,R14
1291 ADCQ DX,R15
1292 MOVQ 96(DI),DX
1293 IMUL3Q $19,DX,AX
1294 MULQ 184(SP)
1295 ADDQ AX,SI
1296 ADCQ DX,CX
1297 MOVQ 96(DI),DX
1298 IMUL3Q $19,DX,AX
1299 MULQ 192(SP)
1300 ADDQ AX,R8
1301 ADCQ DX,R9
1302 MOVQ 104(DI),AX
1303 MULQ 160(SP)
1304 ADDQ AX,R12
1305 ADCQ DX,R13
1306 MOVQ 104(DI),AX
1307 MULQ 168(SP)
1308 ADDQ AX,R14
1309 ADCQ DX,R15
1310 MOVQ 0(SP),AX
1311 MULQ 184(SP)
1312 ADDQ AX,R8
1313 ADCQ DX,R9
1314 MOVQ 0(SP),AX
1315 MULQ 192(SP)
1316 ADDQ AX,R10
1317 ADCQ DX,R11
1318 MOVQ 112(DI),AX
1319 MULQ 160(SP)
1320 ADDQ AX,R14
1321 ADCQ DX,R15
1322 MOVQ 8(SP),AX
1323 MULQ 176(SP)
1324 ADDQ AX,R8
1325 ADCQ DX,R9
1326 MOVQ 8(SP),AX
1327 MULQ 184(SP)
1328 ADDQ AX,R10
1329 ADCQ DX,R11
1330 MOVQ 8(SP),AX
1331 MULQ 192(SP)
1332 ADDQ AX,R12
1333 ADCQ DX,R13
1334 MOVQ $REDMASK51,DX
1335 SHLQ $13,CX:SI
1336 ANDQ DX,SI
1337 SHLQ $13,R9:R8
1338 ANDQ DX,R8
1339 ADDQ CX,R8
1340 SHLQ $13,R11:R10
1341 ANDQ DX,R10
1342 ADDQ R9,R10
1343 SHLQ $13,R13:R12
1344 ANDQ DX,R12
1345 ADDQ R11,R12
1346 SHLQ $13,R15:R14
1347 ANDQ DX,R14
1348 ADDQ R13,R14
1349 IMUL3Q $19,R15,CX
1350 ADDQ CX,SI
1351 MOVQ SI,CX
1352 SHRQ $51,CX
1353 ADDQ R8,CX
1354 MOVQ CX,R8
1355 SHRQ $51,CX
1356 ANDQ DX,SI
1357 ADDQ R10,CX
1358 MOVQ CX,R9
1359 SHRQ $51,CX
1360 ANDQ DX,R8
1361 ADDQ R12,CX
1362 MOVQ CX,AX
1363 SHRQ $51,CX
1364 ANDQ DX,R9
1365 ADDQ R14,CX
1366 MOVQ CX,R10
1367 SHRQ $51,CX
1368 ANDQ DX,AX
1369 IMUL3Q $19,CX,CX
1370 ADDQ CX,SI
1371 ANDQ DX,R10
1372 MOVQ SI,80(DI)
1373 MOVQ R8,88(DI)
1374 MOVQ R9,96(DI)
1375 MOVQ AX,104(DI)
1376 MOVQ R10,112(DI)
1377 RET