diff --git a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s index 21175f570d..0fd3703ade 100644 --- a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s +++ b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s @@ -995,18 +995,17 @@ bn_mulx4x_mont: mulxq 16(%rsi),%r15,%r13 adoxq -24(%rbx),%r11 adcxq %r15,%r12 - adoxq %rbp,%r12 + adoxq -16(%rbx),%r12 adcxq %rbp,%r13 + adoxq %rbp,%r13 movq %rdi,8(%rsp) -.byte 0x67 movq %r8,%r15 imulq 24(%rsp),%r8 xorl %ebp,%ebp mulxq 24(%rsi),%rax,%r14 movq %r8,%rdx - adoxq -16(%rbx),%r12 adcxq %rax,%r13 adoxq -8(%rbx),%r13 adcxq %rbp,%r14 diff --git a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s index 416152560a..7eac91326f 100644 --- a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s +++ b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s @@ -1889,6 +1889,7 @@ __bn_sqr8x_reduction: .align 32 .L8x_tail_done: + xorq %rax,%rax addq (%rdx),%r8 adcq $0,%r9 adcq $0,%r10 @@ -1897,9 +1898,7 @@ __bn_sqr8x_reduction: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - xorq %rax,%rax + adcq $0,%rax negq %rsi .L8x_no_tail: @@ -3344,6 +3343,7 @@ __bn_sqrx8x_reduction: .align 32 .Lsqrx8x_tail_done: + xorq %rax,%rax addq 24+8(%rsp),%r8 adcq $0,%r9 adcq $0,%r10 @@ -3352,9 +3352,7 @@ __bn_sqrx8x_reduction: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - movq %rsi,%rax + adcq $0,%rax subq 16+8(%rsp),%rsi .Lsqrx8x_no_tail: @@ -3369,7 +3367,7 @@ __bn_sqrx8x_reduction: adcq 40(%rdi),%r13 adcq 48(%rdi),%r14 adcq 56(%rdi),%r15 - adcq %rax,%rax + adcq $0,%rax movq 32+8(%rsp),%rbx movq 64(%rdi,%rcx,1),%rdx diff --git a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s index 1d5e63892f..9fcda4ba3b 100644 --- a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s +++ b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s @@ -995,18 +995,17 @@ L$mulx4x_outer: mulxq 16(%rsi),%r15,%r13 adoxq -24(%rbx),%r11 adcxq %r15,%r12 - adoxq %rbp,%r12 + adoxq -16(%rbx),%r12 adcxq %rbp,%r13 + adoxq %rbp,%r13 movq %rdi,8(%rsp) -.byte 0x67 movq %r8,%r15 imulq 24(%rsp),%r8 xorl %ebp,%ebp mulxq 24(%rsi),%rax,%r14 movq %r8,%rdx - adoxq -16(%rbx),%r12 adcxq %rax,%r13 adoxq -8(%rbx),%r13 adcxq %rbp,%r14 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s index 878c31ffac..21416b6f5d 100644 --- a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s +++ b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s @@ -1889,6 +1889,7 @@ L$8x_tail: .p2align 5 L$8x_tail_done: + xorq %rax,%rax addq (%rdx),%r8 adcq $0,%r9 adcq $0,%r10 @@ -1897,9 +1898,7 @@ L$8x_tail_done: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - xorq %rax,%rax + adcq $0,%rax negq %rsi L$8x_no_tail: @@ -3344,6 +3343,7 @@ L$sqrx8x_tail: .p2align 5 L$sqrx8x_tail_done: + xorq %rax,%rax addq 24+8(%rsp),%r8 adcq $0,%r9 adcq $0,%r10 @@ -3352,9 +3352,7 @@ L$sqrx8x_tail_done: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - movq %rsi,%rax + adcq $0,%rax subq 16+8(%rsp),%rsi L$sqrx8x_no_tail: @@ -3369,7 +3367,7 @@ L$sqrx8x_no_tail: adcq 40(%rdi),%r13 adcq 48(%rdi),%r14 adcq 56(%rdi),%r15 - adcq %rax,%rax + adcq $0,%rax movq 32+8(%rsp),%rbx movq 64(%rdi,%rcx,1),%rdx diff --git a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm index 9693ed97e4..a1efb2f698 100644 --- a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm +++ b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm @@ -1053,18 +1053,17 @@ $L$mulx4x_outer:: mulx r13,r15,QWORD PTR[16+rsi] adox r11,QWORD PTR[((-24))+rbx] adcx r12,r15 - adox r12,rbp + adox r12,QWORD PTR[((-16))+rbx] adcx r13,rbp + adox r13,rbp mov QWORD PTR[8+rsp],rdi -DB 067h mov r15,r8 imul r8,QWORD PTR[24+rsp] xor ebp,ebp mulx r14,rax,QWORD PTR[24+rsi] mov rdx,r8 - adox r12,QWORD PTR[((-16))+rbx] adcx r13,rax adox r13,QWORD PTR[((-8))+rbx] adcx r14,rbp diff --git a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm index 6cd4f2d3d8..837b0bcedc 100644 --- a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm +++ b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm @@ -1935,6 +1935,7 @@ $L$8x_tail:: ALIGN 32 $L$8x_tail_done:: + xor rax,rax add r8,QWORD PTR[rdx] adc r9,0 adc r10,0 @@ -1943,9 +1944,7 @@ $L$8x_tail_done:: adc r13,0 adc r14,0 adc r15,0 - - - xor rax,rax + adc rax,0 neg rsi $L$8x_no_tail:: @@ -3435,6 +3434,7 @@ DB 0c4h,062h,0fbh,0f6h,0a5h,020h,000h,000h,000h ALIGN 32 $L$sqrx8x_tail_done:: + xor rax,rax add r8,QWORD PTR[((24+8))+rsp] adc r9,0 adc r10,0 @@ -3443,9 +3443,7 @@ $L$sqrx8x_tail_done:: adc r13,0 adc r14,0 adc r15,0 - - - mov rax,rsi + adc rax,0 sub rsi,QWORD PTR[((16+8))+rsp] $L$sqrx8x_no_tail:: @@ -3460,7 +3458,7 @@ DB 102,72,15,126,213 adc r13,QWORD PTR[40+rdi] adc r14,QWORD PTR[48+rdi] adc r15,QWORD PTR[56+rdi] - adc rax,rax + adc rax,0 mov rbx,QWORD PTR[((32+8))+rsp] mov rdx,QWORD PTR[64+rcx*1+rdi] diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s index 74ac8ee159..175f552577 100644 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s +++ b/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s @@ -1881,6 +1881,7 @@ __bn_sqr8x_reduction: .align 32 .L8x_tail_done: + xorq %rax,%rax addq (%rdx),%r8 adcq $0,%r9 adcq $0,%r10 @@ -1889,9 +1890,7 @@ __bn_sqr8x_reduction: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - xorq %rax,%rax + adcq $0,%rax negq %rsi .L8x_no_tail: diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s index 527abf5711..17036a5abd 100644 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s +++ b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s @@ -1881,6 +1881,7 @@ L$8x_tail: .p2align 5 L$8x_tail_done: + xorq %rax,%rax addq (%rdx),%r8 adcq $0,%r9 adcq $0,%r10 @@ -1889,9 +1890,7 @@ L$8x_tail_done: adcq $0,%r13 adcq $0,%r14 adcq $0,%r15 - - - xorq %rax,%rax + adcq $0,%rax negq %rsi L$8x_no_tail: diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm index 89f45a4915..a1cd3dd1b6 100644 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm +++ b/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm @@ -1927,6 +1927,7 @@ $L$8x_tail:: ALIGN 32 $L$8x_tail_done:: + xor rax,rax add r8,QWORD PTR[rdx] adc r9,0 adc r10,0 @@ -1935,9 +1936,7 @@ $L$8x_tail_done:: adc r13,0 adc r14,0 adc r15,0 - - - xor rax,rax + adc rax,0 neg rsi $L$8x_no_tail::