mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 10:47:28 +02:00
Wycheproof fixes
Curve25519: reduce to less than mod at end of curve25519, optimize to not use imulq when andq can be used instead. x86_64 Karatsuba Mul: Don't put add carry into overflow and then continue adding zero. Overflow is lost.
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@ -4677,7 +4677,6 @@ _sp_2048_mul_32:
|
|||||||
addq $0x80, %r15
|
addq $0x80, %r15
|
||||||
# Add
|
# Add
|
||||||
movq (%r15), %rax
|
movq (%r15), %rax
|
||||||
xorq %r9, %r9
|
|
||||||
addq (%r11), %rax
|
addq (%r11), %rax
|
||||||
movq 8(%r15), %rcx
|
movq 8(%r15), %rcx
|
||||||
movq %rax, (%r15)
|
movq %rax, (%r15)
|
||||||
@ -4728,7 +4727,6 @@ _sp_2048_mul_32:
|
|||||||
movq %rax, 120(%r15)
|
movq %rax, 120(%r15)
|
||||||
adcq 128(%r11), %rcx
|
adcq 128(%r11), %rcx
|
||||||
movq %rcx, 128(%r15)
|
movq %rcx, 128(%r15)
|
||||||
adcq $0x00, %r9
|
|
||||||
# Add to zero
|
# Add to zero
|
||||||
movq 136(%r11), %rax
|
movq 136(%r11), %rax
|
||||||
adcq $0x00, %rax
|
adcq $0x00, %rax
|
||||||
@ -5356,7 +5354,6 @@ _sp_2048_mul_avx2_32:
|
|||||||
addq $0x80, %r15
|
addq $0x80, %r15
|
||||||
# Add
|
# Add
|
||||||
movq (%r15), %rax
|
movq (%r15), %rax
|
||||||
xorq %r9, %r9
|
|
||||||
addq (%r11), %rax
|
addq (%r11), %rax
|
||||||
movq 8(%r15), %rcx
|
movq 8(%r15), %rcx
|
||||||
movq %rax, (%r15)
|
movq %rax, (%r15)
|
||||||
@ -5407,7 +5404,6 @@ _sp_2048_mul_avx2_32:
|
|||||||
movq %rax, 120(%r15)
|
movq %rax, 120(%r15)
|
||||||
adcq 128(%r11), %rcx
|
adcq 128(%r11), %rcx
|
||||||
movq %rcx, 128(%r15)
|
movq %rcx, 128(%r15)
|
||||||
adcq $0x00, %r9
|
|
||||||
# Add to zero
|
# Add to zero
|
||||||
movq 136(%r11), %rax
|
movq 136(%r11), %rax
|
||||||
adcq $0x00, %rax
|
adcq $0x00, %rax
|
||||||
@ -43508,7 +43504,6 @@ _sp_4096_mul_64:
|
|||||||
addq $0x100, %r15
|
addq $0x100, %r15
|
||||||
# Add
|
# Add
|
||||||
movq (%r15), %rax
|
movq (%r15), %rax
|
||||||
xorq %r9, %r9
|
|
||||||
addq (%r11), %rax
|
addq (%r11), %rax
|
||||||
movq 8(%r15), %rcx
|
movq 8(%r15), %rcx
|
||||||
movq %rax, (%r15)
|
movq %rax, (%r15)
|
||||||
@ -43607,7 +43602,6 @@ _sp_4096_mul_64:
|
|||||||
movq %rcx, 248(%r15)
|
movq %rcx, 248(%r15)
|
||||||
adcq 256(%r11), %r8
|
adcq 256(%r11), %r8
|
||||||
movq %r8, 256(%r15)
|
movq %r8, 256(%r15)
|
||||||
adcq $0x00, %r9
|
|
||||||
# Add to zero
|
# Add to zero
|
||||||
movq 264(%r11), %rax
|
movq 264(%r11), %rax
|
||||||
adcq $0x00, %rax
|
adcq $0x00, %rax
|
||||||
@ -44763,7 +44757,6 @@ _sp_4096_mul_avx2_64:
|
|||||||
addq $0x100, %r15
|
addq $0x100, %r15
|
||||||
# Add
|
# Add
|
||||||
movq (%r15), %rax
|
movq (%r15), %rax
|
||||||
xorq %r9, %r9
|
|
||||||
addq (%r11), %rax
|
addq (%r11), %rax
|
||||||
movq 8(%r15), %rcx
|
movq 8(%r15), %rcx
|
||||||
movq %rax, (%r15)
|
movq %rax, (%r15)
|
||||||
@ -44862,7 +44855,6 @@ _sp_4096_mul_avx2_64:
|
|||||||
movq %rcx, 248(%r15)
|
movq %rcx, 248(%r15)
|
||||||
adcq 256(%r11), %r8
|
adcq 256(%r11), %r8
|
||||||
movq %r8, 256(%r15)
|
movq %r8, 256(%r15)
|
||||||
adcq $0x00, %r9
|
|
||||||
# Add to zero
|
# Add to zero
|
||||||
movq 264(%r11), %rax
|
movq 264(%r11), %rax
|
||||||
adcq $0x00, %rax
|
adcq $0x00, %rax
|
||||||
|
@ -4585,7 +4585,6 @@ ENDIF
|
|||||||
add rsi, 128
|
add rsi, 128
|
||||||
; Add
|
; Add
|
||||||
mov rax, QWORD PTR [rsi]
|
mov rax, QWORD PTR [rsi]
|
||||||
xor r11, r11
|
|
||||||
add rax, QWORD PTR [r13]
|
add rax, QWORD PTR [r13]
|
||||||
mov r9, QWORD PTR [rsi+8]
|
mov r9, QWORD PTR [rsi+8]
|
||||||
mov QWORD PTR [rsi], rax
|
mov QWORD PTR [rsi], rax
|
||||||
@ -4636,7 +4635,6 @@ ENDIF
|
|||||||
mov QWORD PTR [rsi+120], rax
|
mov QWORD PTR [rsi+120], rax
|
||||||
adc r9, QWORD PTR [r13+128]
|
adc r9, QWORD PTR [r13+128]
|
||||||
mov QWORD PTR [rsi+128], r9
|
mov QWORD PTR [rsi+128], r9
|
||||||
adc r11, 0
|
|
||||||
; Add to zero
|
; Add to zero
|
||||||
mov rax, QWORD PTR [r13+136]
|
mov rax, QWORD PTR [r13+136]
|
||||||
adc rax, 0
|
adc rax, 0
|
||||||
@ -5245,7 +5243,6 @@ ENDIF
|
|||||||
add rsi, 128
|
add rsi, 128
|
||||||
; Add
|
; Add
|
||||||
mov rax, QWORD PTR [rsi]
|
mov rax, QWORD PTR [rsi]
|
||||||
xor r11, r11
|
|
||||||
add rax, QWORD PTR [r13]
|
add rax, QWORD PTR [r13]
|
||||||
mov r9, QWORD PTR [rsi+8]
|
mov r9, QWORD PTR [rsi+8]
|
||||||
mov QWORD PTR [rsi], rax
|
mov QWORD PTR [rsi], rax
|
||||||
@ -5296,7 +5293,6 @@ ENDIF
|
|||||||
mov QWORD PTR [rsi+120], rax
|
mov QWORD PTR [rsi+120], rax
|
||||||
adc r9, QWORD PTR [r13+128]
|
adc r9, QWORD PTR [r13+128]
|
||||||
mov QWORD PTR [rsi+128], r9
|
mov QWORD PTR [rsi+128], r9
|
||||||
adc r11, 0
|
|
||||||
; Add to zero
|
; Add to zero
|
||||||
mov rax, QWORD PTR [r13+136]
|
mov rax, QWORD PTR [r13+136]
|
||||||
adc rax, 0
|
adc rax, 0
|
||||||
@ -42510,7 +42506,6 @@ ENDIF
|
|||||||
add rsi, 256
|
add rsi, 256
|
||||||
; Add
|
; Add
|
||||||
mov rax, QWORD PTR [rsi]
|
mov rax, QWORD PTR [rsi]
|
||||||
xor r11, r11
|
|
||||||
add rax, QWORD PTR [r13]
|
add rax, QWORD PTR [r13]
|
||||||
mov r9, QWORD PTR [rsi+8]
|
mov r9, QWORD PTR [rsi+8]
|
||||||
mov QWORD PTR [rsi], rax
|
mov QWORD PTR [rsi], rax
|
||||||
@ -42609,7 +42604,6 @@ ENDIF
|
|||||||
mov QWORD PTR [rsi+248], r9
|
mov QWORD PTR [rsi+248], r9
|
||||||
adc r10, QWORD PTR [r13+256]
|
adc r10, QWORD PTR [r13+256]
|
||||||
mov QWORD PTR [rsi+256], r10
|
mov QWORD PTR [rsi+256], r10
|
||||||
adc r11, 0
|
|
||||||
; Add to zero
|
; Add to zero
|
||||||
mov rax, QWORD PTR [r13+264]
|
mov rax, QWORD PTR [r13+264]
|
||||||
adc rax, 0
|
adc rax, 0
|
||||||
@ -43746,7 +43740,6 @@ ENDIF
|
|||||||
add rsi, 256
|
add rsi, 256
|
||||||
; Add
|
; Add
|
||||||
mov rax, QWORD PTR [rsi]
|
mov rax, QWORD PTR [rsi]
|
||||||
xor r11, r11
|
|
||||||
add rax, QWORD PTR [r13]
|
add rax, QWORD PTR [r13]
|
||||||
mov r9, QWORD PTR [rsi+8]
|
mov r9, QWORD PTR [rsi+8]
|
||||||
mov QWORD PTR [rsi], rax
|
mov QWORD PTR [rsi], rax
|
||||||
@ -43845,7 +43838,6 @@ ENDIF
|
|||||||
mov QWORD PTR [rsi+248], r9
|
mov QWORD PTR [rsi+248], r9
|
||||||
adc r10, QWORD PTR [r13+256]
|
adc r10, QWORD PTR [r13+256]
|
||||||
mov QWORD PTR [rsi+256], r10
|
mov QWORD PTR [rsi+256], r10
|
||||||
adc r11, 0
|
|
||||||
; Add to zero
|
; Add to zero
|
||||||
mov rax, QWORD PTR [r13+264]
|
mov rax, QWORD PTR [r13+264]
|
||||||
adc rax, 0
|
adc rax, 0
|
||||||
|
Reference in New Issue
Block a user