1 #if defined(__x86_64__)
7 .private_extern _bn_mul_mont
34 leaq (%rsp,%r10,8),%rsp
37 movq %r11,8(%rsp,%r9,8)
67 movq (%rsi,%r15,8),%rax
72 movq %r13,-16(%rsp,%r15,8)
78 movq (%rcx,%r15,8),%rax
92 movq %r13,-16(%rsp,%r15,8)
99 movq %r13,-8(%rsp,%r9,8)
100 movq %rdx,(%rsp,%r9,8)
106 movq (%r12,%r14,8),%rbx
131 movq (%rsi,%r15,8),%rax
134 movq (%rsp,%r15,8),%r10
136 movq %r13,-16(%rsp,%r15,8)
142 movq (%rcx,%r15,8),%rax
157 movq (%rsp,%r15,8),%r10
159 movq %r13,-16(%rsp,%r15,8)
167 movq %r13,-8(%rsp,%r9,8)
168 movq %rdx,(%rsp,%r9,8)
180 L$sub: sbbq (%rcx,%r14,8),%rax
181 movq %rax,(%rdi,%r14,8)
182 movq 8(%rsi,%r14,8),%rax
192 movq (%rsp,%r14,8),%rsi
193 movq (%rdi,%r14,8),%rcx
197 movq %r14,(%rsp,%r14,8)
198 movq %rsi,(%rdi,%r14,8)
203 movq 8(%rsp,%r9,8),%rsi
230 leaq (%rsp,%r10,8),%rsp
233 movq %r11,8(%rsp,%r9,8)
235 movq %rdi,16(%rsp,%r9,8)
278 movq -16(%rcx,%r15,8),%rax
284 movq -8(%rsi,%r15,8),%rax
288 movq %r13,-24(%rsp,%r15,8)
293 movq -8(%rcx,%r15,8),%rax
299 movq (%rsi,%r15,8),%rax
303 movq %rdi,-16(%rsp,%r15,8)
308 movq (%rcx,%r15,8),%rax
314 movq 8(%rsi,%r15,8),%rax
318 movq %r13,-8(%rsp,%r15,8)
323 movq 8(%rcx,%r15,8),%rax
330 movq -16(%rsi,%r15,8),%rax
334 movq %rdi,-32(%rsp,%r15,8)
341 movq -16(%rcx,%r15,8),%rax
347 movq -8(%rsi,%r15,8),%rax
351 movq %r13,-24(%rsp,%r15,8)
356 movq -8(%rcx,%r15,8),%rax
366 movq %rdi,-16(%rsp,%r15,8)
372 movq %r13,-8(%rsp,%r15,8)
373 movq %rdi,(%rsp,%r15,8)
378 movq (%r12,%r14,8),%rbx
418 movq -16(%rcx,%r15,8),%rax
420 addq -16(%rsp,%r15,8),%r10
426 movq -8(%rsi,%r15,8),%rax
430 movq %r13,-24(%rsp,%r15,8)
435 movq -8(%rcx,%r15,8),%rax
437 addq -8(%rsp,%r15,8),%r11
443 movq (%rsi,%r15,8),%rax
447 movq %rdi,-16(%rsp,%r15,8)
452 movq (%rcx,%r15,8),%rax
454 addq (%rsp,%r15,8),%r10
460 movq 8(%rsi,%r15,8),%rax
464 movq %r13,-8(%rsp,%r15,8)
469 movq 8(%rcx,%r15,8),%rax
471 addq 8(%rsp,%r15,8),%r11
478 movq -16(%rsi,%r15,8),%rax
482 movq %rdi,-32(%rsp,%r15,8)
489 movq -16(%rcx,%r15,8),%rax
491 addq -16(%rsp,%r15,8),%r10
497 movq -8(%rsi,%r15,8),%rax
501 movq %r13,-24(%rsp,%r15,8)
506 movq -8(%rcx,%r15,8),%rax
508 addq -8(%rsp,%r15,8),%r11
519 movq %rdi,-16(%rsp,%r15,8)
525 addq (%rsp,%r9,8),%r13
527 movq %r13,-8(%rsp,%r15,8)
528 movq %rdi,(%rsp,%r15,8)
532 movq 16(%rsp,%r9,8),%rdi
547 movq %rax,0(%rdi,%r14,8)
548 movq %rdx,8(%rdi,%r14,8)
549 sbbq 16(%rcx,%r14,8),%rbx
550 movq 32(%rsi,%r14,8),%rax
551 movq 40(%rsi,%r14,8),%rdx
552 sbbq 24(%rcx,%r14,8),%rbp
553 movq %rbx,16(%rdi,%r14,8)
554 movq %rbp,24(%rdi,%r14,8)
555 sbbq 32(%rcx,%r14,8),%rax
556 movq 48(%rsi,%r14,8),%rbx
557 movq 56(%rsi,%r14,8),%rbp
558 sbbq 40(%rcx,%r14,8),%rdx
563 movq %rax,0(%rdi,%r14,8)
564 movq 32(%rsi,%r14,8),%rax
565 sbbq 16(%rcx,%r14,8),%rbx
566 movq %rdx,8(%rdi,%r14,8)
567 sbbq 24(%rcx,%r14,8),%rbp
568 movq %rbx,16(%rdi,%r14,8)
572 punpcklqdq %xmm0,%xmm0
573 movq %rbp,24(%rdi,%r14,8)
581 movdqu (%rsp,%r14,1),%xmm2
582 movdqu 16(%rsp,%r14,1),%xmm4
583 movdqu (%rdi,%r14,1),%xmm1
584 movdqu 16(%rdi,%r14,1),%xmm3
591 movdqu %xmm2,(%rdi,%r14,1)
592 movdqu %xmm4,16(%rdi,%r14,1)
593 movdqa %xmm5,(%rsp,%r14,1)
594 movdqa %xmm5,16(%rsp,%r14,1)
601 movq 8(%rsp,%r9,8),%rsi
637 leaq -64(%rsp,%r9,4),%r11
644 leaq -64(%rsp,%r9,4),%rsp
649 leaq 4096-64(,%r9,4),%r10
650 leaq -64(%rsp,%r9,4),%rsp
660 leaq 64(%rsp,%r9,2),%r11
666 .byte 102,73,15,110,211
668 movl _OPENSSL_ia32cap_P+8(%rip),%eax
679 movdqa %xmm1,16(%r11)
680 movdqa %xmm3,32(%r11)
681 movdqa %xmm4,48(%r11)
687 .byte 102,72,15,110,207
688 .byte 102,73,15,110,218
689 call _bn_sqr8x_internal
693 leaq 64(%rsp,%r9,2),%rdx
701 movdqa %xmm0,16(%rax)
702 movdqa %xmm0,32(%rax)
703 movdqa %xmm0,48(%rax)
706 movdqa %xmm0,16(%rdx)
707 movdqa %xmm0,32(%rdx)
708 movdqa %xmm0,48(%rdx)
724 .byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0