diff options
Diffstat (limited to 'src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c')
-rw-r--r-- | src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c b/src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c index 63b7b64cda..0bc440d34f 100644 --- a/src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c +++ b/src/lib/libcrypto/arch/amd64/crypto_cpu_caps.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: crypto_cpu_caps.c,v 1.4 2024/11/16 13:05:35 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_cpu_caps.c,v 1.7 2025/07/22 09:18:02 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
4 | * | 4 | * |
@@ -98,10 +98,14 @@ crypto_cpu_caps_init(void) | |||
98 | if ((edx & IA32CAP_MASK0_SSE2) != 0) | 98 | if ((edx & IA32CAP_MASK0_SSE2) != 0) |
99 | caps |= CPUCAP_MASK_SSE2; | 99 | caps |= CPUCAP_MASK_SSE2; |
100 | 100 | ||
101 | if ((ecx & IA32CAP_MASK1_AESNI) != 0) | 101 | if ((ecx & IA32CAP_MASK1_AESNI) != 0) { |
102 | caps |= CPUCAP_MASK_AESNI; | 102 | caps |= CPUCAP_MASK_AESNI; |
103 | if ((ecx & IA32CAP_MASK1_PCLMUL) != 0) | 103 | crypto_cpu_caps_amd64 |= CRYPTO_CPU_CAPS_AMD64_AES; |
104 | } | ||
105 | if ((ecx & IA32CAP_MASK1_PCLMUL) != 0) { | ||
104 | caps |= CPUCAP_MASK_PCLMUL; | 106 | caps |= CPUCAP_MASK_PCLMUL; |
107 | crypto_cpu_caps_amd64 |= CRYPTO_CPU_CAPS_AMD64_CLMUL; | ||
108 | } | ||
105 | if ((ecx & IA32CAP_MASK1_SSSE3) != 0) | 109 | if ((ecx & IA32CAP_MASK1_SSSE3) != 0) |
106 | caps |= CPUCAP_MASK_SSSE3; | 110 | caps |= CPUCAP_MASK_SSSE3; |
107 | 111 | ||
@@ -126,9 +130,3 @@ crypto_cpu_caps_init(void) | |||
126 | 130 | ||
127 | OPENSSL_ia32cap_P = caps; | 131 | OPENSSL_ia32cap_P = caps; |
128 | } | 132 | } |
129 | |||
130 | uint64_t | ||
131 | crypto_cpu_caps_ia32(void) | ||
132 | { | ||
133 | return OPENSSL_ia32cap_P; | ||
134 | } | ||