summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2018-01-25 17:00:13 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2018-01-25 21:39:28 +0000
commit439b32a6aa2c1ec8e18e3f21b28a0c93102ba5bb (patch)
tree86f5a1826aef4b8533674aae2d327199739d9577
parent631144d9f0b730cd0fe0fb0fe3a2930942830c9c (diff)
downloadqtwebengine-chromium-439b32a6aa2c1ec8e18e3f21b28a0c93102ba5bb.tar.gz
[Backport] Chromium-side changes for BoringSSL cherry-pick.
BoringSSL cherry-picks a little complex due to generated files spanning two repositories. (We'll need to come up with a better story here...) This is the result of running generate_build_files.py at this revision: https://boringssl.googlesource.com/boringssl/+/a20bb7ff8bb5057065a2e7941249773f9676cf45 Conveniently, all affected files in this commit are Chromium-side, but I'll do a DEPS update too, just to keep it all in sync. Bug: 793030 Reviewed-on: https://chromium-review.googlesource.com/820333 Reviewed-by: Steven Valdez <svaldez@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#145} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} Change-Id: I6fea7106d5d1a667bb48cd90da54289339296cab Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
-rw-r--r--chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S11
-rw-r--r--chromium/third_party/boringssl/mac-x86_64/crypto/fipsmodule/rsaz-avx2.S11
-rw-r--r--chromium/third_party/boringssl/win-x86_64/crypto/fipsmodule/rsaz-avx2.asm11
3 files changed, 18 insertions, 15 deletions
diff --git a/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S b/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S
index cd3048260e1..e6db7f6ef59 100644
--- a/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S
+++ b/chromium/third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S
@@ -77,7 +77,7 @@ rsaz_1024_sqr_avx2:
vmovdqu 256-128(%rsi),%ymm8
leaq 192(%rsp),%rbx
- vpbroadcastq .Land_mask(%rip),%ymm15
+ vmovdqu .Land_mask(%rip),%ymm15
jmp .LOOP_GRANDE_SQR_1024
.align 32
@@ -829,10 +829,10 @@ rsaz_1024_mul_avx2:
vpmuludq 192-128(%rcx),%ymm11,%ymm12
vpaddq %ymm12,%ymm6,%ymm6
vpmuludq 224-128(%rcx),%ymm11,%ymm13
- vpblendd $3,%ymm14,%ymm9,%ymm9
+ vpblendd $3,%ymm14,%ymm9,%ymm12
vpaddq %ymm13,%ymm7,%ymm7
vpmuludq 256-128(%rcx),%ymm11,%ymm0
- vpaddq %ymm9,%ymm3,%ymm3
+ vpaddq %ymm12,%ymm3,%ymm3
vpaddq %ymm0,%ymm8,%ymm8
movq %rbx,%rax
@@ -845,7 +845,9 @@ rsaz_1024_mul_avx2:
vmovdqu -8+64-128(%rsi),%ymm13
movq %r10,%rax
+ vpblendd $0xfc,%ymm14,%ymm9,%ymm9
imull %r8d,%eax
+ vpaddq %ymm9,%ymm4,%ymm4
andl $0x1fffffff,%eax
imulq 16-128(%rsi),%rbx
@@ -1074,7 +1076,6 @@ rsaz_1024_mul_avx2:
decl %r14d
jnz .Loop_mul_1024
- vpermq $0,%ymm15,%ymm15
vpaddq (%rsp),%ymm12,%ymm0
vpsrlq $29,%ymm0,%ymm12
@@ -1735,7 +1736,7 @@ rsaz_avx2_eligible:
.align 64
.Land_mask:
-.quad 0x1fffffff,0x1fffffff,0x1fffffff,-1
+.quad 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff
.Lscatter_permd:
.long 0,2,4,6,7,7,7,7
.Lgather_permd:
diff --git a/chromium/third_party/boringssl/mac-x86_64/crypto/fipsmodule/rsaz-avx2.S b/chromium/third_party/boringssl/mac-x86_64/crypto/fipsmodule/rsaz-avx2.S
index d5202250eb4..c82c9d6f948 100644
--- a/chromium/third_party/boringssl/mac-x86_64/crypto/fipsmodule/rsaz-avx2.S
+++ b/chromium/third_party/boringssl/mac-x86_64/crypto/fipsmodule/rsaz-avx2.S
@@ -77,7 +77,7 @@ L$sqr_1024_no_n_copy:
vmovdqu 256-128(%rsi),%ymm8
leaq 192(%rsp),%rbx
- vpbroadcastq L$and_mask(%rip),%ymm15
+ vmovdqu L$and_mask(%rip),%ymm15
jmp L$OOP_GRANDE_SQR_1024
.p2align 5
@@ -829,10 +829,10 @@ L$oop_mul_1024:
vpmuludq 192-128(%rcx),%ymm11,%ymm12
vpaddq %ymm12,%ymm6,%ymm6
vpmuludq 224-128(%rcx),%ymm11,%ymm13
- vpblendd $3,%ymm14,%ymm9,%ymm9
+ vpblendd $3,%ymm14,%ymm9,%ymm12
vpaddq %ymm13,%ymm7,%ymm7
vpmuludq 256-128(%rcx),%ymm11,%ymm0
- vpaddq %ymm9,%ymm3,%ymm3
+ vpaddq %ymm12,%ymm3,%ymm3
vpaddq %ymm0,%ymm8,%ymm8
movq %rbx,%rax
@@ -845,7 +845,9 @@ L$oop_mul_1024:
vmovdqu -8+64-128(%rsi),%ymm13
movq %r10,%rax
+ vpblendd $0xfc,%ymm14,%ymm9,%ymm9
imull %r8d,%eax
+ vpaddq %ymm9,%ymm4,%ymm4
andl $0x1fffffff,%eax
imulq 16-128(%rsi),%rbx
@@ -1074,7 +1076,6 @@ L$oop_mul_1024:
decl %r14d
jnz L$oop_mul_1024
- vpermq $0,%ymm15,%ymm15
vpaddq (%rsp),%ymm12,%ymm0
vpsrlq $29,%ymm0,%ymm12
@@ -1734,7 +1735,7 @@ _rsaz_avx2_eligible:
.p2align 6
L$and_mask:
-.quad 0x1fffffff,0x1fffffff,0x1fffffff,-1
+.quad 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff
L$scatter_permd:
.long 0,2,4,6,7,7,7,7
L$gather_permd:
diff --git a/chromium/third_party/boringssl/win-x86_64/crypto/fipsmodule/rsaz-avx2.asm b/chromium/third_party/boringssl/win-x86_64/crypto/fipsmodule/rsaz-avx2.asm
index 05b562e2de4..0c6f6e1f76f 100644
--- a/chromium/third_party/boringssl/win-x86_64/crypto/fipsmodule/rsaz-avx2.asm
+++ b/chromium/third_party/boringssl/win-x86_64/crypto/fipsmodule/rsaz-avx2.asm
@@ -103,7 +103,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
@@ -891,10 +891,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
@@ -907,7 +907,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]
@@ -1136,7 +1138,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
@@ -1828,7 +1829,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: