summaryrefslogtreecommitdiff
path: root/linux-x86_64
diff options
context:
space:
mode:
authorRobert Sloan <varomodt@google.com>2017-04-17 10:52:19 -0700
committerRob Sloan <varomodt@google.com>2017-04-21 15:32:53 +0000
commit572a4e2e687520da9e518528d7371b794b1decc0 (patch)
tree01e37d6026a12b36b9c98d5e2a1f2aecec60a0d6 /linux-x86_64
parent899a4fe0a1b9a593cbfeaebcf15ac6f585d5832b (diff)
downloadboringssl-572a4e2e687520da9e518528d7371b794b1decc0.tar.gz
external/boringssl: Sync to 2c45fa0b90f61b27973fa81893e014fc8c8e8999.
This includes the following changes: https://boringssl.googlesource.com/boringssl/+log/faa539f877432814d0f2de19846eb99f2ea1e207..2c45fa0b90f61b27973fa81893e014fc8c8e8999 Test: BoringSSL CTS Presubmits Change-Id: Ie6dc40e0c979168ec73fa1165cbc6e6b83793439
Diffstat (limited to 'linux-x86_64')
-rw-r--r--linux-x86_64/crypto/fipsmodule/aes-x86_64.S (renamed from linux-x86_64/crypto/aes/aes-x86_64.S)7
-rw-r--r--linux-x86_64/crypto/fipsmodule/aesni-x86_64.S (renamed from linux-x86_64/crypto/aes/aesni-x86_64.S)15
-rw-r--r--linux-x86_64/crypto/fipsmodule/bsaes-x86_64.S (renamed from linux-x86_64/crypto/aes/bsaes-x86_64.S)0
-rw-r--r--linux-x86_64/crypto/fipsmodule/md5-x86_64.S (renamed from linux-x86_64/crypto/md5/md5-x86_64.S)0
-rw-r--r--linux-x86_64/crypto/fipsmodule/sha1-x86_64.S (renamed from linux-x86_64/crypto/sha/sha1-x86_64.S)12
-rw-r--r--linux-x86_64/crypto/fipsmodule/sha256-x86_64.S (renamed from linux-x86_64/crypto/sha/sha256-x86_64.S)8
-rw-r--r--linux-x86_64/crypto/fipsmodule/sha512-x86_64.S (renamed from linux-x86_64/crypto/sha/sha512-x86_64.S)8
-rw-r--r--linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S (renamed from linux-x86_64/crypto/aes/vpaes-x86_64.S)0
8 files changed, 30 insertions, 20 deletions
diff --git a/linux-x86_64/crypto/aes/aes-x86_64.S b/linux-x86_64/crypto/fipsmodule/aes-x86_64.S
index 1a0a5124..0063c89d 100644
--- a/linux-x86_64/crypto/aes/aes-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/aes-x86_64.S
@@ -1294,8 +1294,8 @@ asm_AES_set_decrypt_key:
.globl asm_AES_cbc_encrypt
.hidden asm_AES_cbc_encrypt
.type asm_AES_cbc_encrypt,@function
-.extern OPENSSL_ia32cap_P
-.hidden OPENSSL_ia32cap_P
+.extern OPENSSL_ia32cap_addr
+.hidden OPENSSL_ia32cap_addr
.hidden asm_AES_cbc_encrypt
asm_AES_cbc_encrypt:
cmpq $0,%rdx
@@ -1317,7 +1317,8 @@ asm_AES_cbc_encrypt:
cmpq $0,%r9
cmoveq %r10,%r14
- movl OPENSSL_ia32cap_P(%rip),%r10d
+ movq OPENSSL_ia32cap_addr(%rip),%r10
+ movl (%r10),%r10d
cmpq $512,%rdx
jb .Lcbc_slow_prologue
testq $15,%rdx
diff --git a/linux-x86_64/crypto/aes/aesni-x86_64.S b/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S
index 2890ccff..b5056f27 100644
--- a/linux-x86_64/crypto/aes/aesni-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S
@@ -1,7 +1,7 @@
#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
.text
-.extern OPENSSL_ia32cap_P
-.hidden OPENSSL_ia32cap_P
+.extern OPENSSL_ia32cap_addr
+.hidden OPENSSL_ia32cap_addr
.globl aesni_encrypt
.hidden aesni_encrypt
.type aesni_encrypt,@function
@@ -1087,7 +1087,8 @@ aesni_ctr32_encrypt_blocks:
leaq 7(%r8),%r9
movl %r10d,96+12(%rsp)
bswapl %r9d
- movl OPENSSL_ia32cap_P+4(%rip),%r10d
+ movq OPENSSL_ia32cap_addr(%rip),%r10
+ movl 4(%r10),%r10d
xorl %ebp,%r9d
andl $71303168,%r10d
movl %r9d,112+12(%rsp)
@@ -3473,7 +3474,8 @@ aesni_cbc_encrypt:
movdqa %xmm5,%xmm14
movdqu 80(%rdi),%xmm7
movdqa %xmm6,%xmm15
- movl OPENSSL_ia32cap_P+4(%rip),%r9d
+ movq OPENSSL_ia32cap_addr(%rip),%r9
+ movl 4(%r9),%r9d
cmpq $0x70,%rdx
jbe .Lcbc_dec_six_or_seven
@@ -3994,10 +3996,11 @@ __aesni_set_encrypt_key:
testq %rdx,%rdx
jz .Lenc_key_ret
- movl $268437504,%r10d
movups (%rdi),%xmm0
xorps %xmm4,%xmm4
- andl OPENSSL_ia32cap_P+4(%rip),%r10d
+ movq OPENSSL_ia32cap_addr(%rip),%r10
+ movl 4(%r10),%r10d
+ andl $268437504,%r10d
leaq 16(%rdx),%rax
cmpl $256,%esi
je .L14rounds
diff --git a/linux-x86_64/crypto/aes/bsaes-x86_64.S b/linux-x86_64/crypto/fipsmodule/bsaes-x86_64.S
index 04b161c9..04b161c9 100644
--- a/linux-x86_64/crypto/aes/bsaes-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/bsaes-x86_64.S
diff --git a/linux-x86_64/crypto/md5/md5-x86_64.S b/linux-x86_64/crypto/fipsmodule/md5-x86_64.S
index 8af65047..8af65047 100644
--- a/linux-x86_64/crypto/md5/md5-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/md5-x86_64.S
diff --git a/linux-x86_64/crypto/sha/sha1-x86_64.S b/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S
index 350d7d66..b7395375 100644
--- a/linux-x86_64/crypto/sha/sha1-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S
@@ -1,16 +1,18 @@
#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
.text
-.extern OPENSSL_ia32cap_P
-.hidden OPENSSL_ia32cap_P
+.extern OPENSSL_ia32cap_addr
+.hidden OPENSSL_ia32cap_addr
.globl sha1_block_data_order
.hidden sha1_block_data_order
.type sha1_block_data_order,@function
.align 16
sha1_block_data_order:
- movl OPENSSL_ia32cap_P+0(%rip),%r9d
- movl OPENSSL_ia32cap_P+4(%rip),%r8d
- movl OPENSSL_ia32cap_P+8(%rip),%r10d
+ leaq OPENSSL_ia32cap_addr(%rip),%r10
+ movq (%r10),%r10
+ movl 0(%r10),%r9d
+ movl 4(%r10),%r8d
+ movl 8(%r10),%r10d
testl $512,%r8d
jz .Lialu
andl $268435456,%r8d
diff --git a/linux-x86_64/crypto/sha/sha256-x86_64.S b/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S
index 62534be4..59830392 100644
--- a/linux-x86_64/crypto/sha/sha256-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S
@@ -1,14 +1,15 @@
#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
.text
-.extern OPENSSL_ia32cap_P
-.hidden OPENSSL_ia32cap_P
+.extern OPENSSL_ia32cap_addr
+.hidden OPENSSL_ia32cap_addr
.globl sha256_block_data_order
.hidden sha256_block_data_order
.type sha256_block_data_order,@function
.align 16
sha256_block_data_order:
- leaq OPENSSL_ia32cap_P(%rip),%r11
+ leaq OPENSSL_ia32cap_addr(%rip),%r11
+ movq (%r11),%r11
movl 0(%r11),%r9d
movl 4(%r11),%r10d
movl 8(%r11),%r11d
@@ -44,6 +45,7 @@ sha256_block_data_order:
movl 20(%rdi),%r9d
movl 24(%rdi),%r10d
movl 28(%rdi),%r11d
+
jmp .Lloop
.align 16
diff --git a/linux-x86_64/crypto/sha/sha512-x86_64.S b/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S
index 1f1793bb..6eedfbcc 100644
--- a/linux-x86_64/crypto/sha/sha512-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S
@@ -1,14 +1,15 @@
#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
.text
-.extern OPENSSL_ia32cap_P
-.hidden OPENSSL_ia32cap_P
+.extern OPENSSL_ia32cap_addr
+.hidden OPENSSL_ia32cap_addr
.globl sha512_block_data_order
.hidden sha512_block_data_order
.type sha512_block_data_order,@function
.align 16
sha512_block_data_order:
- leaq OPENSSL_ia32cap_P(%rip),%r11
+ leaq OPENSSL_ia32cap_addr(%rip),%r11
+ movq (%r11),%r11
movl 0(%r11),%r9d
movl 4(%r11),%r10d
movl 8(%r11),%r11d
@@ -44,6 +45,7 @@ sha512_block_data_order:
movq 40(%rdi),%r9
movq 48(%rdi),%r10
movq 56(%rdi),%r11
+
jmp .Lloop
.align 16
diff --git a/linux-x86_64/crypto/aes/vpaes-x86_64.S b/linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S
index f3a089de..f3a089de 100644
--- a/linux-x86_64/crypto/aes/vpaes-x86_64.S
+++ b/linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S