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