aboutsummaryrefslogtreecommitdiff
path: root/sys/crypto/openssl/i386
diff options
context:
space:
mode:
Diffstat (limited to 'sys/crypto/openssl/i386')
-rw-r--r--sys/crypto/openssl/i386/aes-586.S4
-rw-r--r--sys/crypto/openssl/i386/aesni-x86.S4
-rw-r--r--sys/crypto/openssl/i386/bn-586.S4
-rw-r--r--sys/crypto/openssl/i386/chacha-x86.S4
-rw-r--r--sys/crypto/openssl/i386/ecp_nistz256-x86.S4
-rw-r--r--sys/crypto/openssl/i386/poly1305-x86.S4
-rw-r--r--sys/crypto/openssl/i386/rc4-586.S4
-rw-r--r--sys/crypto/openssl/i386/sha1-586.S4
-rw-r--r--sys/crypto/openssl/i386/sha256-586.S4
-rw-r--r--sys/crypto/openssl/i386/sha512-586.S4
-rw-r--r--sys/crypto/openssl/i386/x86-gf2m.S4
-rw-r--r--sys/crypto/openssl/i386/x86-mont.S4
-rw-r--r--sys/crypto/openssl/i386/x86cpuid.S42
13 files changed, 64 insertions, 26 deletions
diff --git a/sys/crypto/openssl/i386/aes-586.S b/sys/crypto/openssl/i386/aes-586.S
index 861ee21e8400..86dd56e61596 100644
--- a/sys/crypto/openssl/i386/aes-586.S
+++ b/sys/crypto/openssl/i386/aes-586.S
@@ -3302,7 +3302,7 @@ AES_set_decrypt_key:
.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -6623,7 +6623,7 @@ AES_set_decrypt_key:
.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/aesni-x86.S b/sys/crypto/openssl/i386/aesni-x86.S
index 9dbcba730f33..d61299a8f33d 100644
--- a/sys/crypto/openssl/i386/aesni-x86.S
+++ b/sys/crypto/openssl/i386/aesni-x86.S
@@ -3346,7 +3346,7 @@ aesni_set_decrypt_key:
.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
.byte 115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -6711,7 +6711,7 @@ aesni_set_decrypt_key:
.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
.byte 115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/bn-586.S b/sys/crypto/openssl/i386/bn-586.S
index ebbea406881f..4d289f160fc3 100644
--- a/sys/crypto/openssl/i386/bn-586.S
+++ b/sys/crypto/openssl/i386/bn-586.S
@@ -1563,7 +1563,7 @@ bn_sub_part_words:
popl %ebp
ret
.size bn_sub_part_words,.-.L_bn_sub_part_words_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -3136,7 +3136,7 @@ bn_sub_part_words:
popl %ebp
ret
.size bn_sub_part_words,.-.L_bn_sub_part_words_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/chacha-x86.S b/sys/crypto/openssl/i386/chacha-x86.S
index df2b4c3f4f95..6d4d8fb5e727 100644
--- a/sys/crypto/openssl/i386/chacha-x86.S
+++ b/sys/crypto/openssl/i386/chacha-x86.S
@@ -1022,7 +1022,7 @@ ChaCha20_xop:
popl %ebp
ret
.size ChaCha20_xop,.-.L_ChaCha20_xop_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -2063,7 +2063,7 @@ ChaCha20_xop:
popl %ebp
ret
.size ChaCha20_xop,.-.L_ChaCha20_xop_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/ecp_nistz256-x86.S b/sys/crypto/openssl/i386/ecp_nistz256-x86.S
index d304619280c7..c02ddddf7ba7 100644
--- a/sys/crypto/openssl/i386/ecp_nistz256-x86.S
+++ b/sys/crypto/openssl/i386/ecp_nistz256-x86.S
@@ -5272,7 +5272,7 @@ ecp_nistz256_point_add_affine:
popl %ebp
ret
.size ecp_nistz256_point_add_affine,.-.L_ecp_nistz256_point_add_affine_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -10563,7 +10563,7 @@ ecp_nistz256_point_add_affine:
popl %ebp
ret
.size ecp_nistz256_point_add_affine,.-.L_ecp_nistz256_point_add_affine_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/poly1305-x86.S b/sys/crypto/openssl/i386/poly1305-x86.S
index 38af67d4ffc9..d145af1f7653 100644
--- a/sys/crypto/openssl/i386/poly1305-x86.S
+++ b/sys/crypto/openssl/i386/poly1305-x86.S
@@ -1949,7 +1949,7 @@ _poly1305_blocks_avx2:
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
.align 4
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -3917,7 +3917,7 @@ _poly1305_blocks_avx2:
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
.align 4
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/rc4-586.S b/sys/crypto/openssl/i386/rc4-586.S
index 98f5cacec9a6..12242e49c2aa 100644
--- a/sys/crypto/openssl/i386/rc4-586.S
+++ b/sys/crypto/openssl/i386/rc4-586.S
@@ -394,7 +394,7 @@ RC4_options:
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.size RC4_options,.-.L_RC4_options_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -798,7 +798,7 @@ RC4_options:
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.size RC4_options,.-.L_RC4_options_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/sha1-586.S b/sys/crypto/openssl/i386/sha1-586.S
index 19e598226a1d..d8ccd4be670f 100644
--- a/sys/crypto/openssl/i386/sha1-586.S
+++ b/sys/crypto/openssl/i386/sha1-586.S
@@ -3988,7 +3988,7 @@ _sha1_block_data_order_avx:
.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -7995,7 +7995,7 @@ _sha1_block_data_order_avx:
.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/sha256-586.S b/sys/crypto/openssl/i386/sha256-586.S
index f0ed09ebf84a..38c9a21f859d 100644
--- a/sys/crypto/openssl/i386/sha256-586.S
+++ b/sys/crypto/openssl/i386/sha256-586.S
@@ -6786,7 +6786,7 @@ sha256_block_data_order:
popl %ebp
ret
.size sha256_block_data_order,.-.L_sha256_block_data_order_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -13591,7 +13591,7 @@ sha256_block_data_order:
popl %ebp
ret
.size sha256_block_data_order,.-.L_sha256_block_data_order_begin
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/sha512-586.S b/sys/crypto/openssl/i386/sha512-586.S
index a7385b55e0ac..8bfe06d4e454 100644
--- a/sys/crypto/openssl/i386/sha512-586.S
+++ b/sys/crypto/openssl/i386/sha512-586.S
@@ -2832,7 +2832,7 @@ sha512_block_data_order:
.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
.byte 62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -5683,7 +5683,7 @@ sha512_block_data_order:
.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
.byte 62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/x86-gf2m.S b/sys/crypto/openssl/i386/x86-gf2m.S
index 093988d3d5e2..863ed025b29d 100644
--- a/sys/crypto/openssl/i386/x86-gf2m.S
+++ b/sys/crypto/openssl/i386/x86-gf2m.S
@@ -359,7 +359,7 @@ bn_GF2m_mul_2x2:
.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
.byte 62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -734,7 +734,7 @@ bn_GF2m_mul_2x2:
.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
.byte 62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/x86-mont.S b/sys/crypto/openssl/i386/x86-mont.S
index 4a5309b3e0db..1d43ea01a2c4 100644
--- a/sys/crypto/openssl/i386/x86-mont.S
+++ b/sys/crypto/openssl/i386/x86-mont.S
@@ -479,7 +479,7 @@ bn_mul_mont:
.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121
.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46
.byte 111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
@@ -974,7 +974,7 @@ bn_mul_mont:
.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121
.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46
.byte 111,114,103,62,0
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section ".note.gnu.property", "a"
.p2align 2
diff --git a/sys/crypto/openssl/i386/x86cpuid.S b/sys/crypto/openssl/i386/x86cpuid.S
index 2a7f7188b65f..1f8f2222fb7b 100644
--- a/sys/crypto/openssl/i386/x86cpuid.S
+++ b/sys/crypto/openssl/i386/x86cpuid.S
@@ -124,6 +124,24 @@ OPENSSL_ia32_cpuid:
xorl %ecx,%ecx
.byte 0x0f,0xa2
movl %ebx,8(%edi)
+ movl %ecx,12(%edi)
+ movl %edx,16(%edi)
+ cmpl $1,%eax
+ jb .L005no_extended_info
+ movl $7,%eax
+ movl $1,%ecx
+ .byte 0x0f,0xa2
+ movl %eax,20(%edi)
+ movl %edx,24(%edi)
+ movl %ebx,28(%edi)
+ movl %ecx,32(%edi)
+ andl $524288,%edx
+ cmpl $0,%edx
+ je .L005no_extended_info
+ movl $36,%eax
+ movl $0,%ecx
+ .byte 0x0f,0xa2
+ movl %ebx,36(%edi)
.L005no_extended_info:
btl $27,%ebp
jnc .L006clear_avx
@@ -139,6 +157,7 @@ OPENSSL_ia32_cpuid:
andl $4278190079,%esi
.L006clear_avx:
andl $4026525695,%ebp
+ andl $4286578687,20(%edi)
andl $4294967263,8(%edi)
.L007done:
movl %esi,%eax
@@ -594,7 +613,7 @@ OPENSSL_ia32_rdseed_bytes:
.size OPENSSL_ia32_rdseed_bytes,.-.L_OPENSSL_ia32_rdseed_bytes_begin
.hidden OPENSSL_cpuid_setup
.hidden OPENSSL_ia32cap_P
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section .init
call OPENSSL_cpuid_setup
@@ -739,6 +758,24 @@ OPENSSL_ia32_cpuid:
xorl %ecx,%ecx
.byte 0x0f,0xa2
movl %ebx,8(%edi)
+ movl %ecx,12(%edi)
+ movl %edx,16(%edi)
+ cmpl $1,%eax
+ jb .L005no_extended_info
+ movl $7,%eax
+ movl $1,%ecx
+ .byte 0x0f,0xa2
+ movl %eax,20(%edi)
+ movl %edx,24(%edi)
+ movl %ebx,28(%edi)
+ movl %ecx,32(%edi)
+ andl $524288,%edx
+ cmpl $0,%edx
+ je .L005no_extended_info
+ movl $36,%eax
+ movl $0,%ecx
+ .byte 0x0f,0xa2
+ movl %ebx,36(%edi)
.L005no_extended_info:
btl $27,%ebp
jnc .L006clear_avx
@@ -754,6 +791,7 @@ OPENSSL_ia32_cpuid:
andl $4278190079,%esi
.L006clear_avx:
andl $4026525695,%ebp
+ andl $4286578687,20(%edi)
andl $4294967263,8(%edi)
.L007done:
movl %esi,%eax
@@ -1194,7 +1232,7 @@ OPENSSL_ia32_rdseed_bytes:
.size OPENSSL_ia32_rdseed_bytes,.-.L_OPENSSL_ia32_rdseed_bytes_begin
.hidden OPENSSL_cpuid_setup
.hidden OPENSSL_ia32cap_P
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,40,4
.section .init
call OPENSSL_cpuid_setup