Update to OpenSSL 1.0.2.o

This commit is contained in:
Steve Dower
2018-04-13 17:29:45 +00:00
parent ccd3ab4aff
commit 4933cd8231
386 changed files with 5623 additions and 2984 deletions

View File

@@ -2795,6 +2795,7 @@ $L$prologue_shaext:
mov r11d,DWORD[240+rcx]
sub rsi,rdi
movups xmm15,XMMWORD[rcx]
movups xmm2,XMMWORD[r8]
movups xmm0,XMMWORD[16+rcx]
lea rcx,[112+rcx]

View File

@@ -4147,6 +4147,7 @@ $L$prologue_shaext:
mov r11d,DWORD[240+rcx]
sub rsi,rdi
movups xmm15,XMMWORD[rcx]
movups xmm6,XMMWORD[r8]
movups xmm4,XMMWORD[16+rcx]
lea rcx,[112+rcx]

View File

@@ -1132,19 +1132,18 @@ DB 0x67
adox r13,rbp
DB 0x67,0x67
mulx rax,rcx,rdx
mov rdx,r8
mov rdx,QWORD[(($L$poly+24))]
adox r14,rcx
shlx rcx,r8,rsi
adox r15,rax
shrx rax,r8,rsi
mov rbp,QWORD[(($L$poly+24))]
mov rbp,rdx
add r9,rcx
adc r10,rax
mulx r8,rcx,rbp
mov rdx,r9
mulx r8,rcx,r8
adc r11,rcx
shlx rcx,r9,rsi
adc r8,0
@@ -1154,8 +1153,7 @@ DB 0x67,0x67
add r10,rcx
adc r11,rax
mulx r9,rcx,rbp
mov rdx,r10
mulx r9,rcx,r9
adc r8,rcx
shlx rcx,r10,rsi
adc r9,0
@@ -1165,8 +1163,7 @@ DB 0x67,0x67
add r11,rcx
adc r8,rax
mulx r10,rcx,rbp
mov rdx,r11
mulx r10,rcx,r10
adc r9,rcx
shlx rcx,r11,rsi
adc r10,0
@@ -1176,12 +1173,12 @@ DB 0x67,0x67
add r8,rcx
adc r9,rax
mulx r11,rcx,rbp
mulx r11,rcx,r11
adc r10,rcx
adc r11,0
xor rdx,rdx
adc r12,r8
add r12,r8
mov rsi,QWORD[(($L$poly+8))]
adc r13,r9
mov r8,r12
@@ -1190,8 +1187,7 @@ DB 0x67,0x67
mov r9,r13
adc rdx,0
xor eax,eax
sbb r12,-1
sub r12,-1
mov r10,r14
sbb r13,rsi
sbb r14,0

View File

@@ -94,7 +94,7 @@ $L$sqr_1024_no_n_copy:
vmovdqu ymm8,YMMWORD[((256-128))+rsi]
lea rbx,[192+rsp]
vpbroadcastq ymm15,QWORD[$L$and_mask]
vmovdqu ymm15,YMMWORD[$L$and_mask]
jmp NEAR $L$OOP_GRANDE_SQR_1024
ALIGN 32
@@ -863,10 +863,10 @@ $L$oop_mul_1024:
vpmuludq ymm12,ymm11,YMMWORD[((192-128))+rcx]
vpaddq ymm6,ymm6,ymm12
vpmuludq ymm13,ymm11,YMMWORD[((224-128))+rcx]
vpblendd ymm9,ymm9,ymm14,3
vpblendd ymm12,ymm9,ymm14,3
vpaddq ymm7,ymm7,ymm13
vpmuludq ymm0,ymm11,YMMWORD[((256-128))+rcx]
vpaddq ymm3,ymm3,ymm9
vpaddq ymm3,ymm3,ymm12
vpaddq ymm8,ymm8,ymm0
mov rax,rbx
@@ -879,7 +879,9 @@ $L$oop_mul_1024:
vmovdqu ymm13,YMMWORD[((-8+64-128))+rsi]
mov rax,r10
vpblendd ymm9,ymm9,ymm14,0xfc
imul eax,r8d
vpaddq ymm4,ymm4,ymm9
and eax,0x1fffffff
imul rbx,QWORD[((16-128))+rsi]
@@ -1108,7 +1110,6 @@ $L$oop_mul_1024:
dec r14d
jnz NEAR $L$oop_mul_1024
vpermq ymm15,ymm15,0
vpaddq ymm0,ymm12,YMMWORD[rsp]
vpsrlq ymm12,ymm0,29
@@ -1785,7 +1786,7 @@ rsaz_avx2_eligible:
ALIGN 64
$L$and_mask:
DQ 0x1fffffff,0x1fffffff,0x1fffffff,-1
DQ 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff
$L$scatter_permd:
DD 0,2,4,6,7,7,7,7
$L$gather_permd:

View File

@@ -3164,11 +3164,19 @@ DB 0x67
ALIGN 32
$L$sqrx8x_break:
sub r8,QWORD[((16+8))+rsp]
xor rbp,rbp
sub rbx,QWORD[((16+8))+rsp]
adcx r8,rbp
mov rcx,QWORD[((24+8))+rsp]
adcx r9,rbp
mov rdx,QWORD[rsi]
xor ebp,ebp
adc r10,0
mov QWORD[rdi],r8
adc r11,0
adc r12,0
adc r13,0
adc r14,0
adc r15,0
cmp rdi,rcx
je NEAR $L$sqrx8x_outer_loop

View File

@@ -119,14 +119,6 @@ $L$intel:
shr r10d,14
and r10d,0xfff
cmp r11d,7
jb NEAR $L$nocacheinfo
mov eax,7
xor ecx,ecx
cpuid
mov DWORD[8+rdi],ebx
$L$nocacheinfo:
mov eax,1
cpuid
@@ -136,8 +128,19 @@ $L$nocacheinfo:
or edx,0x40000000
and ah,15
cmp ah,15
jne NEAR $L$notintel
jne NEAR $L$notP4
or edx,0x00100000
$L$notP4:
cmp ah,6
jne NEAR $L$notintel
and eax,0x0fff0ff0
cmp eax,0x00050670
je NEAR $L$knights
cmp eax,0x00080650
jne NEAR $L$notintel
$L$knights:
and ecx,0xfbffffff
$L$notintel:
bt edx,28
jnc NEAR $L$generic
@@ -156,6 +159,19 @@ $L$generic:
or r9d,ecx
mov r10d,edx
cmp r11d,7
jb NEAR $L$no_extended_info
mov eax,7
xor ecx,ecx
cpuid
bt r9d,26
jc NEAR $L$notknights
and ebx,0xfff7ffff
$L$notknights:
mov DWORD[8+rdi],ebx
$L$no_extended_info:
bt r9d,27
jnc NEAR $L$clear_avx
xor ecx,ecx