Index: third_party/boringssl/mac-x86_64/crypto/bn/x86_64-mont5.S |
diff --git a/third_party/boringssl/mac-x86_64/crypto/bn/x86_64-mont5.S b/third_party/boringssl/mac-x86_64/crypto/bn/x86_64-mont5.S |
deleted file mode 100644 |
index f3ad8d783f5cd33d9b3b57a5ffd96f701c3e541c..0000000000000000000000000000000000000000 |
--- a/third_party/boringssl/mac-x86_64/crypto/bn/x86_64-mont5.S |
+++ /dev/null |
@@ -1,2240 +0,0 @@ |
-#if defined(__x86_64__) |
-.text |
- |
- |
- |
-.globl _bn_mul_mont_gather5 |
-.private_extern _bn_mul_mont_gather5 |
- |
-.p2align 6 |
-_bn_mul_mont_gather5: |
- testl $7,%r9d |
- jnz L$mul_enter |
- jmp L$mul4x_enter |
- |
-.p2align 4 |
-L$mul_enter: |
- movl %r9d,%r9d |
- movq %rsp,%rax |
- movd 8(%rsp),%xmm5 |
- leaq L$inc(%rip),%r10 |
- pushq %rbx |
- pushq %rbp |
- pushq %r12 |
- pushq %r13 |
- pushq %r14 |
- pushq %r15 |
- |
- leaq 2(%r9),%r11 |
- negq %r11 |
- leaq -264(%rsp,%r11,8),%rsp |
- andq $-1024,%rsp |
- |
- movq %rax,8(%rsp,%r9,8) |
-L$mul_body: |
- leaq 128(%rdx),%r12 |
- movdqa 0(%r10),%xmm0 |
- movdqa 16(%r10),%xmm1 |
- leaq 24-112(%rsp,%r9,8),%r10 |
- andq $-16,%r10 |
- |
- pshufd $0,%xmm5,%xmm5 |
- movdqa %xmm1,%xmm4 |
- movdqa %xmm1,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
-.byte 0x67 |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,112(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,128(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,144(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,160(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,176(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,192(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,208(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,224(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,240(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,256(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,272(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,288(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,304(%r10) |
- |
- paddd %xmm2,%xmm3 |
-.byte 0x67 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,320(%r10) |
- |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,336(%r10) |
- pand 64(%r12),%xmm0 |
- |
- pand 80(%r12),%xmm1 |
- pand 96(%r12),%xmm2 |
- movdqa %xmm3,352(%r10) |
- pand 112(%r12),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa -128(%r12),%xmm4 |
- movdqa -112(%r12),%xmm5 |
- movdqa -96(%r12),%xmm2 |
- pand 112(%r10),%xmm4 |
- movdqa -80(%r12),%xmm3 |
- pand 128(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 144(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 160(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa -64(%r12),%xmm4 |
- movdqa -48(%r12),%xmm5 |
- movdqa -32(%r12),%xmm2 |
- pand 176(%r10),%xmm4 |
- movdqa -16(%r12),%xmm3 |
- pand 192(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 208(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 224(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa 0(%r12),%xmm4 |
- movdqa 16(%r12),%xmm5 |
- movdqa 32(%r12),%xmm2 |
- pand 240(%r10),%xmm4 |
- movdqa 48(%r12),%xmm3 |
- pand 256(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 272(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 288(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- por %xmm1,%xmm0 |
- pshufd $0x4e,%xmm0,%xmm1 |
- por %xmm1,%xmm0 |
- leaq 256(%r12),%r12 |
-.byte 102,72,15,126,195 |
- |
- movq (%r8),%r8 |
- movq (%rsi),%rax |
- |
- xorq %r14,%r14 |
- xorq %r15,%r15 |
- |
- movq %r8,%rbp |
- mulq %rbx |
- movq %rax,%r10 |
- movq (%rcx),%rax |
- |
- imulq %r10,%rbp |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r10 |
- movq 8(%rsi),%rax |
- adcq $0,%rdx |
- movq %rdx,%r13 |
- |
- leaq 1(%r15),%r15 |
- jmp L$1st_enter |
- |
-.p2align 4 |
-L$1st: |
- addq %rax,%r13 |
- movq (%rsi,%r15,8),%rax |
- adcq $0,%rdx |
- addq %r11,%r13 |
- movq %r10,%r11 |
- adcq $0,%rdx |
- movq %r13,-16(%rsp,%r15,8) |
- movq %rdx,%r13 |
- |
-L$1st_enter: |
- mulq %rbx |
- addq %rax,%r11 |
- movq (%rcx,%r15,8),%rax |
- adcq $0,%rdx |
- leaq 1(%r15),%r15 |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- cmpq %r9,%r15 |
- jne L$1st |
- |
- |
- addq %rax,%r13 |
- adcq $0,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- movq %r13,-16(%rsp,%r9,8) |
- movq %rdx,%r13 |
- movq %r10,%r11 |
- |
- xorq %rdx,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- movq %r13,-8(%rsp,%r9,8) |
- movq %rdx,(%rsp,%r9,8) |
- |
- leaq 1(%r14),%r14 |
- jmp L$outer |
-.p2align 4 |
-L$outer: |
- leaq 24+128(%rsp,%r9,8),%rdx |
- andq $-16,%rdx |
- pxor %xmm4,%xmm4 |
- pxor %xmm5,%xmm5 |
- movdqa -128(%r12),%xmm0 |
- movdqa -112(%r12),%xmm1 |
- movdqa -96(%r12),%xmm2 |
- movdqa -80(%r12),%xmm3 |
- pand -128(%rdx),%xmm0 |
- pand -112(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand -96(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand -80(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa -64(%r12),%xmm0 |
- movdqa -48(%r12),%xmm1 |
- movdqa -32(%r12),%xmm2 |
- movdqa -16(%r12),%xmm3 |
- pand -64(%rdx),%xmm0 |
- pand -48(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand -32(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand -16(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 0(%r12),%xmm0 |
- movdqa 16(%r12),%xmm1 |
- movdqa 32(%r12),%xmm2 |
- movdqa 48(%r12),%xmm3 |
- pand 0(%rdx),%xmm0 |
- pand 16(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand 32(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand 48(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 64(%r12),%xmm0 |
- movdqa 80(%r12),%xmm1 |
- movdqa 96(%r12),%xmm2 |
- movdqa 112(%r12),%xmm3 |
- pand 64(%rdx),%xmm0 |
- pand 80(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand 96(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand 112(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- por %xmm5,%xmm4 |
- pshufd $0x4e,%xmm4,%xmm0 |
- por %xmm4,%xmm0 |
- leaq 256(%r12),%r12 |
- |
- movq (%rsi),%rax |
-.byte 102,72,15,126,195 |
- |
- xorq %r15,%r15 |
- movq %r8,%rbp |
- movq (%rsp),%r10 |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq (%rcx),%rax |
- adcq $0,%rdx |
- |
- imulq %r10,%rbp |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r10 |
- movq 8(%rsi),%rax |
- adcq $0,%rdx |
- movq 8(%rsp),%r10 |
- movq %rdx,%r13 |
- |
- leaq 1(%r15),%r15 |
- jmp L$inner_enter |
- |
-.p2align 4 |
-L$inner: |
- addq %rax,%r13 |
- movq (%rsi,%r15,8),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- movq (%rsp,%r15,8),%r10 |
- adcq $0,%rdx |
- movq %r13,-16(%rsp,%r15,8) |
- movq %rdx,%r13 |
- |
-L$inner_enter: |
- mulq %rbx |
- addq %rax,%r11 |
- movq (%rcx,%r15,8),%rax |
- adcq $0,%rdx |
- addq %r11,%r10 |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- leaq 1(%r15),%r15 |
- |
- mulq %rbp |
- cmpq %r9,%r15 |
- jne L$inner |
- |
- addq %rax,%r13 |
- adcq $0,%rdx |
- addq %r10,%r13 |
- movq (%rsp,%r9,8),%r10 |
- adcq $0,%rdx |
- movq %r13,-16(%rsp,%r9,8) |
- movq %rdx,%r13 |
- |
- xorq %rdx,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %r13,-8(%rsp,%r9,8) |
- movq %rdx,(%rsp,%r9,8) |
- |
- leaq 1(%r14),%r14 |
- cmpq %r9,%r14 |
- jb L$outer |
- |
- xorq %r14,%r14 |
- movq (%rsp),%rax |
- leaq (%rsp),%rsi |
- movq %r9,%r15 |
- jmp L$sub |
-.p2align 4 |
-L$sub: sbbq (%rcx,%r14,8),%rax |
- movq %rax,(%rdi,%r14,8) |
- movq 8(%rsi,%r14,8),%rax |
- leaq 1(%r14),%r14 |
- decq %r15 |
- jnz L$sub |
- |
- sbbq $0,%rax |
- xorq %r14,%r14 |
- movq %r9,%r15 |
-.p2align 4 |
-L$copy: |
- movq (%rsp,%r14,8),%rsi |
- movq (%rdi,%r14,8),%rcx |
- xorq %rcx,%rsi |
- andq %rax,%rsi |
- xorq %rcx,%rsi |
- movq %r14,(%rsp,%r14,8) |
- movq %rsi,(%rdi,%r14,8) |
- leaq 1(%r14),%r14 |
- subq $1,%r15 |
- jnz L$copy |
- |
- movq 8(%rsp,%r9,8),%rsi |
- movq $1,%rax |
- |
- movq -48(%rsi),%r15 |
- movq -40(%rsi),%r14 |
- movq -32(%rsi),%r13 |
- movq -24(%rsi),%r12 |
- movq -16(%rsi),%rbp |
- movq -8(%rsi),%rbx |
- leaq (%rsi),%rsp |
-L$mul_epilogue: |
- .byte 0xf3,0xc3 |
- |
- |
-.p2align 5 |
-bn_mul4x_mont_gather5: |
-L$mul4x_enter: |
-.byte 0x67 |
- movq %rsp,%rax |
- pushq %rbx |
- pushq %rbp |
- pushq %r12 |
- pushq %r13 |
- pushq %r14 |
- pushq %r15 |
- |
-.byte 0x67 |
- shll $3,%r9d |
- leaq (%r9,%r9,2),%r10 |
- negq %r9 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- leaq -320(%rsp,%r9,2),%r11 |
- subq %rdi,%r11 |
- andq $4095,%r11 |
- cmpq %r11,%r10 |
- jb L$mul4xsp_alt |
- subq %r11,%rsp |
- leaq -320(%rsp,%r9,2),%rsp |
- jmp L$mul4xsp_done |
- |
-.p2align 5 |
-L$mul4xsp_alt: |
- leaq 4096-320(,%r9,2),%r10 |
- leaq -320(%rsp,%r9,2),%rsp |
- subq %r10,%r11 |
- movq $0,%r10 |
- cmovcq %r10,%r11 |
- subq %r11,%rsp |
-L$mul4xsp_done: |
- andq $-64,%rsp |
- negq %r9 |
- |
- movq %rax,40(%rsp) |
-L$mul4x_body: |
- |
- call mul4x_internal |
- |
- movq 40(%rsp),%rsi |
- movq $1,%rax |
- |
- movq -48(%rsi),%r15 |
- movq -40(%rsi),%r14 |
- movq -32(%rsi),%r13 |
- movq -24(%rsi),%r12 |
- movq -16(%rsi),%rbp |
- movq -8(%rsi),%rbx |
- leaq (%rsi),%rsp |
-L$mul4x_epilogue: |
- .byte 0xf3,0xc3 |
- |
- |
- |
-.p2align 5 |
-mul4x_internal: |
- shlq $5,%r9 |
- movd 8(%rax),%xmm5 |
- leaq L$inc(%rip),%rax |
- leaq 128(%rdx,%r9,1),%r13 |
- shrq $5,%r9 |
- movdqa 0(%rax),%xmm0 |
- movdqa 16(%rax),%xmm1 |
- leaq 88-112(%rsp,%r9,1),%r10 |
- leaq 128(%rdx),%r12 |
- |
- pshufd $0,%xmm5,%xmm5 |
- movdqa %xmm1,%xmm4 |
-.byte 0x67,0x67 |
- movdqa %xmm1,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
-.byte 0x67 |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,112(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,128(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,144(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,160(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,176(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,192(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,208(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,224(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,240(%r10) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,256(%r10) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,272(%r10) |
- movdqa %xmm4,%xmm2 |
- |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,288(%r10) |
- movdqa %xmm4,%xmm3 |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,304(%r10) |
- |
- paddd %xmm2,%xmm3 |
-.byte 0x67 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,320(%r10) |
- |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,336(%r10) |
- pand 64(%r12),%xmm0 |
- |
- pand 80(%r12),%xmm1 |
- pand 96(%r12),%xmm2 |
- movdqa %xmm3,352(%r10) |
- pand 112(%r12),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa -128(%r12),%xmm4 |
- movdqa -112(%r12),%xmm5 |
- movdqa -96(%r12),%xmm2 |
- pand 112(%r10),%xmm4 |
- movdqa -80(%r12),%xmm3 |
- pand 128(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 144(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 160(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa -64(%r12),%xmm4 |
- movdqa -48(%r12),%xmm5 |
- movdqa -32(%r12),%xmm2 |
- pand 176(%r10),%xmm4 |
- movdqa -16(%r12),%xmm3 |
- pand 192(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 208(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 224(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- movdqa 0(%r12),%xmm4 |
- movdqa 16(%r12),%xmm5 |
- movdqa 32(%r12),%xmm2 |
- pand 240(%r10),%xmm4 |
- movdqa 48(%r12),%xmm3 |
- pand 256(%r10),%xmm5 |
- por %xmm4,%xmm0 |
- pand 272(%r10),%xmm2 |
- por %xmm5,%xmm1 |
- pand 288(%r10),%xmm3 |
- por %xmm2,%xmm0 |
- por %xmm3,%xmm1 |
- por %xmm1,%xmm0 |
- pshufd $0x4e,%xmm0,%xmm1 |
- por %xmm1,%xmm0 |
- leaq 256(%r12),%r12 |
-.byte 102,72,15,126,195 |
- |
- movq %r13,16+8(%rsp) |
- movq %rdi,56+8(%rsp) |
- |
- movq (%r8),%r8 |
- movq (%rsi),%rax |
- leaq (%rsi,%r9,1),%rsi |
- negq %r9 |
- |
- movq %r8,%rbp |
- mulq %rbx |
- movq %rax,%r10 |
- movq (%rcx),%rax |
- |
- imulq %r10,%rbp |
- leaq 64+8(%rsp),%r14 |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r10 |
- movq 8(%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 8(%rcx),%rax |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq 16(%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- leaq 32(%r9),%r15 |
- leaq 32(%rcx),%rcx |
- adcq $0,%rdx |
- movq %rdi,(%r14) |
- movq %rdx,%r13 |
- jmp L$1st4x |
- |
-.p2align 5 |
-L$1st4x: |
- mulq %rbx |
- addq %rax,%r10 |
- movq -16(%rcx),%rax |
- leaq 32(%r14),%r14 |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq -8(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %r13,-24(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq -8(%rcx),%rax |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq (%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- adcq $0,%rdx |
- movq %rdi,-16(%r14) |
- movq %rdx,%r13 |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq 0(%rcx),%rax |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq 8(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %r13,-8(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 8(%rcx),%rax |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq 16(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- leaq 32(%rcx),%rcx |
- adcq $0,%rdx |
- movq %rdi,(%r14) |
- movq %rdx,%r13 |
- |
- addq $32,%r15 |
- jnz L$1st4x |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq -16(%rcx),%rax |
- leaq 32(%r14),%r14 |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq -8(%rsi),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %r13,-24(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq -8(%rcx),%rax |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq (%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- adcq $0,%rdx |
- movq %rdi,-16(%r14) |
- movq %rdx,%r13 |
- |
- leaq (%rcx,%r9,1),%rcx |
- |
- xorq %rdi,%rdi |
- addq %r10,%r13 |
- adcq $0,%rdi |
- movq %r13,-8(%r14) |
- |
- jmp L$outer4x |
- |
-.p2align 5 |
-L$outer4x: |
- leaq 16+128(%r14),%rdx |
- pxor %xmm4,%xmm4 |
- pxor %xmm5,%xmm5 |
- movdqa -128(%r12),%xmm0 |
- movdqa -112(%r12),%xmm1 |
- movdqa -96(%r12),%xmm2 |
- movdqa -80(%r12),%xmm3 |
- pand -128(%rdx),%xmm0 |
- pand -112(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand -96(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand -80(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa -64(%r12),%xmm0 |
- movdqa -48(%r12),%xmm1 |
- movdqa -32(%r12),%xmm2 |
- movdqa -16(%r12),%xmm3 |
- pand -64(%rdx),%xmm0 |
- pand -48(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand -32(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand -16(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 0(%r12),%xmm0 |
- movdqa 16(%r12),%xmm1 |
- movdqa 32(%r12),%xmm2 |
- movdqa 48(%r12),%xmm3 |
- pand 0(%rdx),%xmm0 |
- pand 16(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand 32(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand 48(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 64(%r12),%xmm0 |
- movdqa 80(%r12),%xmm1 |
- movdqa 96(%r12),%xmm2 |
- movdqa 112(%r12),%xmm3 |
- pand 64(%rdx),%xmm0 |
- pand 80(%rdx),%xmm1 |
- por %xmm0,%xmm4 |
- pand 96(%rdx),%xmm2 |
- por %xmm1,%xmm5 |
- pand 112(%rdx),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- por %xmm5,%xmm4 |
- pshufd $0x4e,%xmm4,%xmm0 |
- por %xmm4,%xmm0 |
- leaq 256(%r12),%r12 |
-.byte 102,72,15,126,195 |
- |
- movq (%r14,%r9,1),%r10 |
- movq %r8,%rbp |
- mulq %rbx |
- addq %rax,%r10 |
- movq (%rcx),%rax |
- adcq $0,%rdx |
- |
- imulq %r10,%rbp |
- movq %rdx,%r11 |
- movq %rdi,(%r14) |
- |
- leaq (%r14,%r9,1),%r14 |
- |
- mulq %rbp |
- addq %rax,%r10 |
- movq 8(%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 8(%rcx),%rax |
- adcq $0,%rdx |
- addq 8(%r14),%r11 |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq 16(%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- leaq 32(%r9),%r15 |
- leaq 32(%rcx),%rcx |
- adcq $0,%rdx |
- movq %rdx,%r13 |
- jmp L$inner4x |
- |
-.p2align 5 |
-L$inner4x: |
- mulq %rbx |
- addq %rax,%r10 |
- movq -16(%rcx),%rax |
- adcq $0,%rdx |
- addq 16(%r14),%r10 |
- leaq 32(%r14),%r14 |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq -8(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %rdi,-32(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq -8(%rcx),%rax |
- adcq $0,%rdx |
- addq -8(%r14),%r11 |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq (%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- adcq $0,%rdx |
- movq %r13,-24(%r14) |
- movq %rdx,%r13 |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq 0(%rcx),%rax |
- adcq $0,%rdx |
- addq (%r14),%r10 |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq 8(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %rdi,-16(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 8(%rcx),%rax |
- adcq $0,%rdx |
- addq 8(%r14),%r11 |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq 16(%rsi,%r15,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- leaq 32(%rcx),%rcx |
- adcq $0,%rdx |
- movq %r13,-8(%r14) |
- movq %rdx,%r13 |
- |
- addq $32,%r15 |
- jnz L$inner4x |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq -16(%rcx),%rax |
- adcq $0,%rdx |
- addq 16(%r14),%r10 |
- leaq 32(%r14),%r14 |
- adcq $0,%rdx |
- movq %rdx,%r11 |
- |
- mulq %rbp |
- addq %rax,%r13 |
- movq -8(%rsi),%rax |
- adcq $0,%rdx |
- addq %r10,%r13 |
- adcq $0,%rdx |
- movq %rdi,-32(%r14) |
- movq %rdx,%rdi |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq %rbp,%rax |
- movq -8(%rcx),%rbp |
- adcq $0,%rdx |
- addq -8(%r14),%r11 |
- adcq $0,%rdx |
- movq %rdx,%r10 |
- |
- mulq %rbp |
- addq %rax,%rdi |
- movq (%rsi,%r9,1),%rax |
- adcq $0,%rdx |
- addq %r11,%rdi |
- adcq $0,%rdx |
- movq %r13,-24(%r14) |
- movq %rdx,%r13 |
- |
- movq %rdi,-16(%r14) |
- leaq (%rcx,%r9,1),%rcx |
- |
- xorq %rdi,%rdi |
- addq %r10,%r13 |
- adcq $0,%rdi |
- addq (%r14),%r13 |
- adcq $0,%rdi |
- movq %r13,-8(%r14) |
- |
- cmpq 16+8(%rsp),%r12 |
- jb L$outer4x |
- xorq %rax,%rax |
- subq %r13,%rbp |
- adcq %r15,%r15 |
- orq %r15,%rdi |
- subq %rdi,%rax |
- leaq (%r14,%r9,1),%rbx |
- movq (%rcx),%r12 |
- leaq (%rcx),%rbp |
- movq %r9,%rcx |
- sarq $3+2,%rcx |
- movq 56+8(%rsp),%rdi |
- decq %r12 |
- xorq %r10,%r10 |
- movq 8(%rbp),%r13 |
- movq 16(%rbp),%r14 |
- movq 24(%rbp),%r15 |
- jmp L$sqr4x_sub_entry |
- |
-.globl _bn_power5 |
-.private_extern _bn_power5 |
- |
-.p2align 5 |
-_bn_power5: |
- movq %rsp,%rax |
- pushq %rbx |
- pushq %rbp |
- pushq %r12 |
- pushq %r13 |
- pushq %r14 |
- pushq %r15 |
- |
- shll $3,%r9d |
- leal (%r9,%r9,2),%r10d |
- negq %r9 |
- movq (%r8),%r8 |
- |
- |
- |
- |
- |
- |
- |
- |
- leaq -320(%rsp,%r9,2),%r11 |
- subq %rdi,%r11 |
- andq $4095,%r11 |
- cmpq %r11,%r10 |
- jb L$pwr_sp_alt |
- subq %r11,%rsp |
- leaq -320(%rsp,%r9,2),%rsp |
- jmp L$pwr_sp_done |
- |
-.p2align 5 |
-L$pwr_sp_alt: |
- leaq 4096-320(,%r9,2),%r10 |
- leaq -320(%rsp,%r9,2),%rsp |
- subq %r10,%r11 |
- movq $0,%r10 |
- cmovcq %r10,%r11 |
- subq %r11,%rsp |
-L$pwr_sp_done: |
- andq $-64,%rsp |
- movq %r9,%r10 |
- negq %r9 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- movq %r8,32(%rsp) |
- movq %rax,40(%rsp) |
-L$power5_body: |
-.byte 102,72,15,110,207 |
-.byte 102,72,15,110,209 |
-.byte 102,73,15,110,218 |
-.byte 102,72,15,110,226 |
- |
- call __bn_sqr8x_internal |
- call __bn_post4x_internal |
- call __bn_sqr8x_internal |
- call __bn_post4x_internal |
- call __bn_sqr8x_internal |
- call __bn_post4x_internal |
- call __bn_sqr8x_internal |
- call __bn_post4x_internal |
- call __bn_sqr8x_internal |
- call __bn_post4x_internal |
- |
-.byte 102,72,15,126,209 |
-.byte 102,72,15,126,226 |
- movq %rsi,%rdi |
- movq 40(%rsp),%rax |
- leaq 32(%rsp),%r8 |
- |
- call mul4x_internal |
- |
- movq 40(%rsp),%rsi |
- movq $1,%rax |
- movq -48(%rsi),%r15 |
- movq -40(%rsi),%r14 |
- movq -32(%rsi),%r13 |
- movq -24(%rsi),%r12 |
- movq -16(%rsi),%rbp |
- movq -8(%rsi),%rbx |
- leaq (%rsi),%rsp |
-L$power5_epilogue: |
- .byte 0xf3,0xc3 |
- |
- |
-.globl _bn_sqr8x_internal |
-.private_extern _bn_sqr8x_internal |
-.private_extern _bn_sqr8x_internal |
- |
-.p2align 5 |
-_bn_sqr8x_internal: |
-__bn_sqr8x_internal: |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- leaq 32(%r10),%rbp |
- leaq (%rsi,%r9,1),%rsi |
- |
- movq %r9,%rcx |
- |
- |
- movq -32(%rsi,%rbp,1),%r14 |
- leaq 48+8(%rsp,%r9,2),%rdi |
- movq -24(%rsi,%rbp,1),%rax |
- leaq -32(%rdi,%rbp,1),%rdi |
- movq -16(%rsi,%rbp,1),%rbx |
- movq %rax,%r15 |
- |
- mulq %r14 |
- movq %rax,%r10 |
- movq %rbx,%rax |
- movq %rdx,%r11 |
- movq %r10,-24(%rdi,%rbp,1) |
- |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- movq %r11,-16(%rdi,%rbp,1) |
- movq %rdx,%r10 |
- |
- |
- movq -8(%rsi,%rbp,1),%rbx |
- mulq %r15 |
- movq %rax,%r12 |
- movq %rbx,%rax |
- movq %rdx,%r13 |
- |
- leaq (%rbp),%rcx |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- addq %r12,%r10 |
- adcq $0,%r11 |
- movq %r10,-8(%rdi,%rcx,1) |
- jmp L$sqr4x_1st |
- |
-.p2align 5 |
-L$sqr4x_1st: |
- movq (%rsi,%rcx,1),%rbx |
- mulq %r15 |
- addq %rax,%r13 |
- movq %rbx,%rax |
- movq %rdx,%r12 |
- adcq $0,%r12 |
- |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- movq 8(%rsi,%rcx,1),%rbx |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- addq %r13,%r11 |
- adcq $0,%r10 |
- |
- |
- mulq %r15 |
- addq %rax,%r12 |
- movq %rbx,%rax |
- movq %r11,(%rdi,%rcx,1) |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- movq 16(%rsi,%rcx,1),%rbx |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- addq %r12,%r10 |
- adcq $0,%r11 |
- |
- mulq %r15 |
- addq %rax,%r13 |
- movq %rbx,%rax |
- movq %r10,8(%rdi,%rcx,1) |
- movq %rdx,%r12 |
- adcq $0,%r12 |
- |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- movq 24(%rsi,%rcx,1),%rbx |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- addq %r13,%r11 |
- adcq $0,%r10 |
- |
- |
- mulq %r15 |
- addq %rax,%r12 |
- movq %rbx,%rax |
- movq %r11,16(%rdi,%rcx,1) |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- leaq 32(%rcx),%rcx |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- addq %r12,%r10 |
- adcq $0,%r11 |
- movq %r10,-8(%rdi,%rcx,1) |
- |
- cmpq $0,%rcx |
- jne L$sqr4x_1st |
- |
- mulq %r15 |
- addq %rax,%r13 |
- leaq 16(%rbp),%rbp |
- adcq $0,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- |
- movq %r13,(%rdi) |
- movq %rdx,%r12 |
- movq %rdx,8(%rdi) |
- jmp L$sqr4x_outer |
- |
-.p2align 5 |
-L$sqr4x_outer: |
- movq -32(%rsi,%rbp,1),%r14 |
- leaq 48+8(%rsp,%r9,2),%rdi |
- movq -24(%rsi,%rbp,1),%rax |
- leaq -32(%rdi,%rbp,1),%rdi |
- movq -16(%rsi,%rbp,1),%rbx |
- movq %rax,%r15 |
- |
- mulq %r14 |
- movq -24(%rdi,%rbp,1),%r10 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- movq %r10,-24(%rdi,%rbp,1) |
- movq %rdx,%r11 |
- |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- addq -16(%rdi,%rbp,1),%r11 |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- movq %r11,-16(%rdi,%rbp,1) |
- |
- xorq %r12,%r12 |
- |
- movq -8(%rsi,%rbp,1),%rbx |
- mulq %r15 |
- addq %rax,%r12 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- addq -8(%rdi,%rbp,1),%r12 |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- addq %r12,%r10 |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- movq %r10,-8(%rdi,%rbp,1) |
- |
- leaq (%rbp),%rcx |
- jmp L$sqr4x_inner |
- |
-.p2align 5 |
-L$sqr4x_inner: |
- movq (%rsi,%rcx,1),%rbx |
- mulq %r15 |
- addq %rax,%r13 |
- movq %rbx,%rax |
- movq %rdx,%r12 |
- adcq $0,%r12 |
- addq (%rdi,%rcx,1),%r13 |
- adcq $0,%r12 |
- |
-.byte 0x67 |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- movq 8(%rsi,%rcx,1),%rbx |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- addq %r13,%r11 |
- adcq $0,%r10 |
- |
- mulq %r15 |
- addq %rax,%r12 |
- movq %r11,(%rdi,%rcx,1) |
- movq %rbx,%rax |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- addq 8(%rdi,%rcx,1),%r12 |
- leaq 16(%rcx),%rcx |
- adcq $0,%r13 |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- adcq $0,%rdx |
- addq %r12,%r10 |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- movq %r10,-8(%rdi,%rcx,1) |
- |
- cmpq $0,%rcx |
- jne L$sqr4x_inner |
- |
-.byte 0x67 |
- mulq %r15 |
- addq %rax,%r13 |
- adcq $0,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- |
- movq %r13,(%rdi) |
- movq %rdx,%r12 |
- movq %rdx,8(%rdi) |
- |
- addq $16,%rbp |
- jnz L$sqr4x_outer |
- |
- |
- movq -32(%rsi),%r14 |
- leaq 48+8(%rsp,%r9,2),%rdi |
- movq -24(%rsi),%rax |
- leaq -32(%rdi,%rbp,1),%rdi |
- movq -16(%rsi),%rbx |
- movq %rax,%r15 |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- |
- mulq %r14 |
- addq %rax,%r11 |
- movq %rbx,%rax |
- movq %r10,-24(%rdi) |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- addq %r13,%r11 |
- movq -8(%rsi),%rbx |
- adcq $0,%r10 |
- |
- mulq %r15 |
- addq %rax,%r12 |
- movq %rbx,%rax |
- movq %r11,-16(%rdi) |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- |
- mulq %r14 |
- addq %rax,%r10 |
- movq %rbx,%rax |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- addq %r12,%r10 |
- adcq $0,%r11 |
- movq %r10,-8(%rdi) |
- |
- mulq %r15 |
- addq %rax,%r13 |
- movq -16(%rsi),%rax |
- adcq $0,%rdx |
- addq %r11,%r13 |
- adcq $0,%rdx |
- |
- movq %r13,(%rdi) |
- movq %rdx,%r12 |
- movq %rdx,8(%rdi) |
- |
- mulq %rbx |
- addq $16,%rbp |
- xorq %r14,%r14 |
- subq %r9,%rbp |
- xorq %r15,%r15 |
- |
- addq %r12,%rax |
- adcq $0,%rdx |
- movq %rax,8(%rdi) |
- movq %rdx,16(%rdi) |
- movq %r15,24(%rdi) |
- |
- movq -16(%rsi,%rbp,1),%rax |
- leaq 48+8(%rsp),%rdi |
- xorq %r10,%r10 |
- movq 8(%rdi),%r11 |
- |
- leaq (%r14,%r10,2),%r12 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r13 |
- shrq $63,%r11 |
- orq %r10,%r13 |
- movq 16(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq 24(%rdi),%r11 |
- adcq %rax,%r12 |
- movq -8(%rsi,%rbp,1),%rax |
- movq %r12,(%rdi) |
- adcq %rdx,%r13 |
- |
- leaq (%r14,%r10,2),%rbx |
- movq %r13,8(%rdi) |
- sbbq %r15,%r15 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r8 |
- shrq $63,%r11 |
- orq %r10,%r8 |
- movq 32(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq 40(%rdi),%r11 |
- adcq %rax,%rbx |
- movq 0(%rsi,%rbp,1),%rax |
- movq %rbx,16(%rdi) |
- adcq %rdx,%r8 |
- leaq 16(%rbp),%rbp |
- movq %r8,24(%rdi) |
- sbbq %r15,%r15 |
- leaq 64(%rdi),%rdi |
- jmp L$sqr4x_shift_n_add |
- |
-.p2align 5 |
-L$sqr4x_shift_n_add: |
- leaq (%r14,%r10,2),%r12 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r13 |
- shrq $63,%r11 |
- orq %r10,%r13 |
- movq -16(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq -8(%rdi),%r11 |
- adcq %rax,%r12 |
- movq -8(%rsi,%rbp,1),%rax |
- movq %r12,-32(%rdi) |
- adcq %rdx,%r13 |
- |
- leaq (%r14,%r10,2),%rbx |
- movq %r13,-24(%rdi) |
- sbbq %r15,%r15 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r8 |
- shrq $63,%r11 |
- orq %r10,%r8 |
- movq 0(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq 8(%rdi),%r11 |
- adcq %rax,%rbx |
- movq 0(%rsi,%rbp,1),%rax |
- movq %rbx,-16(%rdi) |
- adcq %rdx,%r8 |
- |
- leaq (%r14,%r10,2),%r12 |
- movq %r8,-8(%rdi) |
- sbbq %r15,%r15 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r13 |
- shrq $63,%r11 |
- orq %r10,%r13 |
- movq 16(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq 24(%rdi),%r11 |
- adcq %rax,%r12 |
- movq 8(%rsi,%rbp,1),%rax |
- movq %r12,0(%rdi) |
- adcq %rdx,%r13 |
- |
- leaq (%r14,%r10,2),%rbx |
- movq %r13,8(%rdi) |
- sbbq %r15,%r15 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r8 |
- shrq $63,%r11 |
- orq %r10,%r8 |
- movq 32(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq 40(%rdi),%r11 |
- adcq %rax,%rbx |
- movq 16(%rsi,%rbp,1),%rax |
- movq %rbx,16(%rdi) |
- adcq %rdx,%r8 |
- movq %r8,24(%rdi) |
- sbbq %r15,%r15 |
- leaq 64(%rdi),%rdi |
- addq $32,%rbp |
- jnz L$sqr4x_shift_n_add |
- |
- leaq (%r14,%r10,2),%r12 |
-.byte 0x67 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r13 |
- shrq $63,%r11 |
- orq %r10,%r13 |
- movq -16(%rdi),%r10 |
- movq %r11,%r14 |
- mulq %rax |
- negq %r15 |
- movq -8(%rdi),%r11 |
- adcq %rax,%r12 |
- movq -8(%rsi),%rax |
- movq %r12,-32(%rdi) |
- adcq %rdx,%r13 |
- |
- leaq (%r14,%r10,2),%rbx |
- movq %r13,-24(%rdi) |
- sbbq %r15,%r15 |
- shrq $63,%r10 |
- leaq (%rcx,%r11,2),%r8 |
- shrq $63,%r11 |
- orq %r10,%r8 |
- mulq %rax |
- negq %r15 |
- adcq %rax,%rbx |
- adcq %rdx,%r8 |
- movq %rbx,-16(%rdi) |
- movq %r8,-8(%rdi) |
-.byte 102,72,15,126,213 |
-__bn_sqr8x_reduction: |
- xorq %rax,%rax |
- leaq (%r9,%rbp,1),%rcx |
- leaq 48+8(%rsp,%r9,2),%rdx |
- movq %rcx,0+8(%rsp) |
- leaq 48+8(%rsp,%r9,1),%rdi |
- movq %rdx,8+8(%rsp) |
- negq %r9 |
- jmp L$8x_reduction_loop |
- |
-.p2align 5 |
-L$8x_reduction_loop: |
- leaq (%rdi,%r9,1),%rdi |
-.byte 0x66 |
- movq 0(%rdi),%rbx |
- movq 8(%rdi),%r9 |
- movq 16(%rdi),%r10 |
- movq 24(%rdi),%r11 |
- movq 32(%rdi),%r12 |
- movq 40(%rdi),%r13 |
- movq 48(%rdi),%r14 |
- movq 56(%rdi),%r15 |
- movq %rax,(%rdx) |
- leaq 64(%rdi),%rdi |
- |
-.byte 0x67 |
- movq %rbx,%r8 |
- imulq 32+8(%rsp),%rbx |
- movq 0(%rbp),%rax |
- movl $8,%ecx |
- jmp L$8x_reduce |
- |
-.p2align 5 |
-L$8x_reduce: |
- mulq %rbx |
- movq 8(%rbp),%rax |
- negq %r8 |
- movq %rdx,%r8 |
- adcq $0,%r8 |
- |
- mulq %rbx |
- addq %rax,%r9 |
- movq 16(%rbp),%rax |
- adcq $0,%rdx |
- addq %r9,%r8 |
- movq %rbx,48-8+8(%rsp,%rcx,8) |
- movq %rdx,%r9 |
- adcq $0,%r9 |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq 24(%rbp),%rax |
- adcq $0,%rdx |
- addq %r10,%r9 |
- movq 32+8(%rsp),%rsi |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 32(%rbp),%rax |
- adcq $0,%rdx |
- imulq %r8,%rsi |
- addq %r11,%r10 |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- |
- mulq %rbx |
- addq %rax,%r12 |
- movq 40(%rbp),%rax |
- adcq $0,%rdx |
- addq %r12,%r11 |
- movq %rdx,%r12 |
- adcq $0,%r12 |
- |
- mulq %rbx |
- addq %rax,%r13 |
- movq 48(%rbp),%rax |
- adcq $0,%rdx |
- addq %r13,%r12 |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- |
- mulq %rbx |
- addq %rax,%r14 |
- movq 56(%rbp),%rax |
- adcq $0,%rdx |
- addq %r14,%r13 |
- movq %rdx,%r14 |
- adcq $0,%r14 |
- |
- mulq %rbx |
- movq %rsi,%rbx |
- addq %rax,%r15 |
- movq 0(%rbp),%rax |
- adcq $0,%rdx |
- addq %r15,%r14 |
- movq %rdx,%r15 |
- adcq $0,%r15 |
- |
- decl %ecx |
- jnz L$8x_reduce |
- |
- leaq 64(%rbp),%rbp |
- xorq %rax,%rax |
- movq 8+8(%rsp),%rdx |
- cmpq 0+8(%rsp),%rbp |
- jae L$8x_no_tail |
- |
-.byte 0x66 |
- addq 0(%rdi),%r8 |
- adcq 8(%rdi),%r9 |
- adcq 16(%rdi),%r10 |
- adcq 24(%rdi),%r11 |
- adcq 32(%rdi),%r12 |
- adcq 40(%rdi),%r13 |
- adcq 48(%rdi),%r14 |
- adcq 56(%rdi),%r15 |
- sbbq %rsi,%rsi |
- |
- movq 48+56+8(%rsp),%rbx |
- movl $8,%ecx |
- movq 0(%rbp),%rax |
- jmp L$8x_tail |
- |
-.p2align 5 |
-L$8x_tail: |
- mulq %rbx |
- addq %rax,%r8 |
- movq 8(%rbp),%rax |
- movq %r8,(%rdi) |
- movq %rdx,%r8 |
- adcq $0,%r8 |
- |
- mulq %rbx |
- addq %rax,%r9 |
- movq 16(%rbp),%rax |
- adcq $0,%rdx |
- addq %r9,%r8 |
- leaq 8(%rdi),%rdi |
- movq %rdx,%r9 |
- adcq $0,%r9 |
- |
- mulq %rbx |
- addq %rax,%r10 |
- movq 24(%rbp),%rax |
- adcq $0,%rdx |
- addq %r10,%r9 |
- movq %rdx,%r10 |
- adcq $0,%r10 |
- |
- mulq %rbx |
- addq %rax,%r11 |
- movq 32(%rbp),%rax |
- adcq $0,%rdx |
- addq %r11,%r10 |
- movq %rdx,%r11 |
- adcq $0,%r11 |
- |
- mulq %rbx |
- addq %rax,%r12 |
- movq 40(%rbp),%rax |
- adcq $0,%rdx |
- addq %r12,%r11 |
- movq %rdx,%r12 |
- adcq $0,%r12 |
- |
- mulq %rbx |
- addq %rax,%r13 |
- movq 48(%rbp),%rax |
- adcq $0,%rdx |
- addq %r13,%r12 |
- movq %rdx,%r13 |
- adcq $0,%r13 |
- |
- mulq %rbx |
- addq %rax,%r14 |
- movq 56(%rbp),%rax |
- adcq $0,%rdx |
- addq %r14,%r13 |
- movq %rdx,%r14 |
- adcq $0,%r14 |
- |
- mulq %rbx |
- movq 48-16+8(%rsp,%rcx,8),%rbx |
- addq %rax,%r15 |
- adcq $0,%rdx |
- addq %r15,%r14 |
- movq 0(%rbp),%rax |
- movq %rdx,%r15 |
- adcq $0,%r15 |
- |
- decl %ecx |
- jnz L$8x_tail |
- |
- leaq 64(%rbp),%rbp |
- movq 8+8(%rsp),%rdx |
- cmpq 0+8(%rsp),%rbp |
- jae L$8x_tail_done |
- |
- movq 48+56+8(%rsp),%rbx |
- negq %rsi |
- movq 0(%rbp),%rax |
- adcq 0(%rdi),%r8 |
- adcq 8(%rdi),%r9 |
- adcq 16(%rdi),%r10 |
- adcq 24(%rdi),%r11 |
- adcq 32(%rdi),%r12 |
- adcq 40(%rdi),%r13 |
- adcq 48(%rdi),%r14 |
- adcq 56(%rdi),%r15 |
- sbbq %rsi,%rsi |
- |
- movl $8,%ecx |
- jmp L$8x_tail |
- |
-.p2align 5 |
-L$8x_tail_done: |
- addq (%rdx),%r8 |
- adcq $0,%r9 |
- adcq $0,%r10 |
- adcq $0,%r11 |
- adcq $0,%r12 |
- adcq $0,%r13 |
- adcq $0,%r14 |
- adcq $0,%r15 |
- |
- |
- xorq %rax,%rax |
- |
- negq %rsi |
-L$8x_no_tail: |
- adcq 0(%rdi),%r8 |
- adcq 8(%rdi),%r9 |
- adcq 16(%rdi),%r10 |
- adcq 24(%rdi),%r11 |
- adcq 32(%rdi),%r12 |
- adcq 40(%rdi),%r13 |
- adcq 48(%rdi),%r14 |
- adcq 56(%rdi),%r15 |
- adcq $0,%rax |
- movq -8(%rbp),%rcx |
- xorq %rsi,%rsi |
- |
-.byte 102,72,15,126,213 |
- |
- movq %r8,0(%rdi) |
- movq %r9,8(%rdi) |
-.byte 102,73,15,126,217 |
- movq %r10,16(%rdi) |
- movq %r11,24(%rdi) |
- movq %r12,32(%rdi) |
- movq %r13,40(%rdi) |
- movq %r14,48(%rdi) |
- movq %r15,56(%rdi) |
- leaq 64(%rdi),%rdi |
- |
- cmpq %rdx,%rdi |
- jb L$8x_reduction_loop |
- .byte 0xf3,0xc3 |
- |
- |
-.p2align 5 |
-__bn_post4x_internal: |
- movq 0(%rbp),%r12 |
- leaq (%rdi,%r9,1),%rbx |
- movq %r9,%rcx |
-.byte 102,72,15,126,207 |
- negq %rax |
-.byte 102,72,15,126,206 |
- sarq $3+2,%rcx |
- decq %r12 |
- xorq %r10,%r10 |
- movq 8(%rbp),%r13 |
- movq 16(%rbp),%r14 |
- movq 24(%rbp),%r15 |
- jmp L$sqr4x_sub_entry |
- |
-.p2align 4 |
-L$sqr4x_sub: |
- movq 0(%rbp),%r12 |
- movq 8(%rbp),%r13 |
- movq 16(%rbp),%r14 |
- movq 24(%rbp),%r15 |
-L$sqr4x_sub_entry: |
- leaq 32(%rbp),%rbp |
- notq %r12 |
- notq %r13 |
- notq %r14 |
- notq %r15 |
- andq %rax,%r12 |
- andq %rax,%r13 |
- andq %rax,%r14 |
- andq %rax,%r15 |
- |
- negq %r10 |
- adcq 0(%rbx),%r12 |
- adcq 8(%rbx),%r13 |
- adcq 16(%rbx),%r14 |
- adcq 24(%rbx),%r15 |
- movq %r12,0(%rdi) |
- leaq 32(%rbx),%rbx |
- movq %r13,8(%rdi) |
- sbbq %r10,%r10 |
- movq %r14,16(%rdi) |
- movq %r15,24(%rdi) |
- leaq 32(%rdi),%rdi |
- |
- incq %rcx |
- jnz L$sqr4x_sub |
- |
- movq %r9,%r10 |
- negq %r9 |
- .byte 0xf3,0xc3 |
- |
-.globl _bn_from_montgomery |
-.private_extern _bn_from_montgomery |
- |
-.p2align 5 |
-_bn_from_montgomery: |
- testl $7,%r9d |
- jz bn_from_mont8x |
- xorl %eax,%eax |
- .byte 0xf3,0xc3 |
- |
- |
- |
-.p2align 5 |
-bn_from_mont8x: |
-.byte 0x67 |
- movq %rsp,%rax |
- pushq %rbx |
- pushq %rbp |
- pushq %r12 |
- pushq %r13 |
- pushq %r14 |
- pushq %r15 |
- |
- shll $3,%r9d |
- leaq (%r9,%r9,2),%r10 |
- negq %r9 |
- movq (%r8),%r8 |
- |
- |
- |
- |
- |
- |
- |
- |
- leaq -320(%rsp,%r9,2),%r11 |
- subq %rdi,%r11 |
- andq $4095,%r11 |
- cmpq %r11,%r10 |
- jb L$from_sp_alt |
- subq %r11,%rsp |
- leaq -320(%rsp,%r9,2),%rsp |
- jmp L$from_sp_done |
- |
-.p2align 5 |
-L$from_sp_alt: |
- leaq 4096-320(,%r9,2),%r10 |
- leaq -320(%rsp,%r9,2),%rsp |
- subq %r10,%r11 |
- movq $0,%r10 |
- cmovcq %r10,%r11 |
- subq %r11,%rsp |
-L$from_sp_done: |
- andq $-64,%rsp |
- movq %r9,%r10 |
- negq %r9 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- movq %r8,32(%rsp) |
- movq %rax,40(%rsp) |
-L$from_body: |
- movq %r9,%r11 |
- leaq 48(%rsp),%rax |
- pxor %xmm0,%xmm0 |
- jmp L$mul_by_1 |
- |
-.p2align 5 |
-L$mul_by_1: |
- movdqu (%rsi),%xmm1 |
- movdqu 16(%rsi),%xmm2 |
- movdqu 32(%rsi),%xmm3 |
- movdqa %xmm0,(%rax,%r9,1) |
- movdqu 48(%rsi),%xmm4 |
- movdqa %xmm0,16(%rax,%r9,1) |
-.byte 0x48,0x8d,0xb6,0x40,0x00,0x00,0x00 |
- movdqa %xmm1,(%rax) |
- movdqa %xmm0,32(%rax,%r9,1) |
- movdqa %xmm2,16(%rax) |
- movdqa %xmm0,48(%rax,%r9,1) |
- movdqa %xmm3,32(%rax) |
- movdqa %xmm4,48(%rax) |
- leaq 64(%rax),%rax |
- subq $64,%r11 |
- jnz L$mul_by_1 |
- |
-.byte 102,72,15,110,207 |
-.byte 102,72,15,110,209 |
-.byte 0x67 |
- movq %rcx,%rbp |
-.byte 102,73,15,110,218 |
- call __bn_sqr8x_reduction |
- call __bn_post4x_internal |
- |
- pxor %xmm0,%xmm0 |
- leaq 48(%rsp),%rax |
- movq 40(%rsp),%rsi |
- jmp L$from_mont_zero |
- |
-.p2align 5 |
-L$from_mont_zero: |
- movdqa %xmm0,0(%rax) |
- movdqa %xmm0,16(%rax) |
- movdqa %xmm0,32(%rax) |
- movdqa %xmm0,48(%rax) |
- leaq 64(%rax),%rax |
- subq $32,%r9 |
- jnz L$from_mont_zero |
- |
- movq $1,%rax |
- movq -48(%rsi),%r15 |
- movq -40(%rsi),%r14 |
- movq -32(%rsi),%r13 |
- movq -24(%rsi),%r12 |
- movq -16(%rsi),%rbp |
- movq -8(%rsi),%rbx |
- leaq (%rsi),%rsp |
-L$from_epilogue: |
- .byte 0xf3,0xc3 |
- |
-.globl _bn_scatter5 |
-.private_extern _bn_scatter5 |
- |
-.p2align 4 |
-_bn_scatter5: |
- cmpl $0,%esi |
- jz L$scatter_epilogue |
- leaq (%rdx,%rcx,8),%rdx |
-L$scatter: |
- movq (%rdi),%rax |
- leaq 8(%rdi),%rdi |
- movq %rax,(%rdx) |
- leaq 256(%rdx),%rdx |
- subl $1,%esi |
- jnz L$scatter |
-L$scatter_epilogue: |
- .byte 0xf3,0xc3 |
- |
- |
-.globl _bn_gather5 |
-.private_extern _bn_gather5 |
- |
-.p2align 5 |
-_bn_gather5: |
-L$SEH_begin_bn_gather5: |
- |
-.byte 0x4c,0x8d,0x14,0x24 |
-.byte 0x48,0x81,0xec,0x08,0x01,0x00,0x00 |
- leaq L$inc(%rip),%rax |
- andq $-16,%rsp |
- |
- movd %ecx,%xmm5 |
- movdqa 0(%rax),%xmm0 |
- movdqa 16(%rax),%xmm1 |
- leaq 128(%rdx),%r11 |
- leaq 128(%rsp),%rax |
- |
- pshufd $0,%xmm5,%xmm5 |
- movdqa %xmm1,%xmm4 |
- movdqa %xmm1,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm4,%xmm3 |
- |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,-128(%rax) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,-112(%rax) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,-96(%rax) |
- movdqa %xmm4,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,-80(%rax) |
- movdqa %xmm4,%xmm3 |
- |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,-64(%rax) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,-48(%rax) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,-32(%rax) |
- movdqa %xmm4,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,-16(%rax) |
- movdqa %xmm4,%xmm3 |
- |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,0(%rax) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,16(%rax) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,32(%rax) |
- movdqa %xmm4,%xmm2 |
- paddd %xmm0,%xmm1 |
- pcmpeqd %xmm5,%xmm0 |
- movdqa %xmm3,48(%rax) |
- movdqa %xmm4,%xmm3 |
- |
- paddd %xmm1,%xmm2 |
- pcmpeqd %xmm5,%xmm1 |
- movdqa %xmm0,64(%rax) |
- movdqa %xmm4,%xmm0 |
- |
- paddd %xmm2,%xmm3 |
- pcmpeqd %xmm5,%xmm2 |
- movdqa %xmm1,80(%rax) |
- movdqa %xmm4,%xmm1 |
- |
- paddd %xmm3,%xmm0 |
- pcmpeqd %xmm5,%xmm3 |
- movdqa %xmm2,96(%rax) |
- movdqa %xmm4,%xmm2 |
- movdqa %xmm3,112(%rax) |
- jmp L$gather |
- |
-.p2align 5 |
-L$gather: |
- pxor %xmm4,%xmm4 |
- pxor %xmm5,%xmm5 |
- movdqa -128(%r11),%xmm0 |
- movdqa -112(%r11),%xmm1 |
- movdqa -96(%r11),%xmm2 |
- pand -128(%rax),%xmm0 |
- movdqa -80(%r11),%xmm3 |
- pand -112(%rax),%xmm1 |
- por %xmm0,%xmm4 |
- pand -96(%rax),%xmm2 |
- por %xmm1,%xmm5 |
- pand -80(%rax),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa -64(%r11),%xmm0 |
- movdqa -48(%r11),%xmm1 |
- movdqa -32(%r11),%xmm2 |
- pand -64(%rax),%xmm0 |
- movdqa -16(%r11),%xmm3 |
- pand -48(%rax),%xmm1 |
- por %xmm0,%xmm4 |
- pand -32(%rax),%xmm2 |
- por %xmm1,%xmm5 |
- pand -16(%rax),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 0(%r11),%xmm0 |
- movdqa 16(%r11),%xmm1 |
- movdqa 32(%r11),%xmm2 |
- pand 0(%rax),%xmm0 |
- movdqa 48(%r11),%xmm3 |
- pand 16(%rax),%xmm1 |
- por %xmm0,%xmm4 |
- pand 32(%rax),%xmm2 |
- por %xmm1,%xmm5 |
- pand 48(%rax),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- movdqa 64(%r11),%xmm0 |
- movdqa 80(%r11),%xmm1 |
- movdqa 96(%r11),%xmm2 |
- pand 64(%rax),%xmm0 |
- movdqa 112(%r11),%xmm3 |
- pand 80(%rax),%xmm1 |
- por %xmm0,%xmm4 |
- pand 96(%rax),%xmm2 |
- por %xmm1,%xmm5 |
- pand 112(%rax),%xmm3 |
- por %xmm2,%xmm4 |
- por %xmm3,%xmm5 |
- por %xmm5,%xmm4 |
- leaq 256(%r11),%r11 |
- pshufd $0x4e,%xmm4,%xmm0 |
- por %xmm4,%xmm0 |
- movq %xmm0,(%rdi) |
- leaq 8(%rdi),%rdi |
- subl $1,%esi |
- jnz L$gather |
- |
- leaq (%r10),%rsp |
- .byte 0xf3,0xc3 |
-L$SEH_end_bn_gather5: |
- |
-.p2align 6 |
-L$inc: |
-.long 0,0, 1,1 |
-.long 2,2, 2,2 |
-.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,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,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 |
-#endif |