From 951cd4503ff3c4cc93c1a36cf06138b1ddd739d7 Mon Sep 17 00:00:00 2001 From: jsing <> Date: Mon, 9 Jun 2025 14:28:34 +0000 Subject: Make OPENSSL_IA32_SSE2 the default for i386 and remove the flag. The OPENSSL_IA32_SSE2 flag controls whether a number of the perlasm scripts generate additional implementations that use SSE2 functionality. In all cases except ghash, the code checks OPENSSL_ia32cap_P for SSE2 support, before trying to run SSE2 code. For ghash it generates a CLMUL based implementation in addition to different MMX version (one MMX version hides behind OPENSSL_IA32_SSE2, the other does not), however this does not appear to actually use SSE2. We also disable AES-NI on i386 if OPENSSL_IA32_SSE2. On OpenBSD, we've always defined OPENSSL_IA32_SSE2 so this is effectively a no-op. The only change is that we now check MMX rather than SSE2 for the ghash MMX implementation. ok bcook@ beck@ --- src/lib/libcrypto/arch/i386/Makefile.inc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/lib/libcrypto/arch') diff --git a/src/lib/libcrypto/arch/i386/Makefile.inc b/src/lib/libcrypto/arch/i386/Makefile.inc index 4bcf8e2bbc..e593c31467 100644 --- a/src/lib/libcrypto/arch/i386/Makefile.inc +++ b/src/lib/libcrypto/arch/i386/Makefile.inc @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile.inc,v 1.28 2025/04/18 13:19:39 jsing Exp $ +# $OpenBSD: Makefile.inc,v 1.29 2025/06/09 14:28:33 jsing Exp $ # i386-specific libcrypto build rules @@ -12,7 +12,6 @@ CFLAGS+= -DAES_ASM SSLASM+= aes aes-586 SSLASM+= aes aesni-x86 # bn -CFLAGS+= -DOPENSSL_IA32_SSE2 SSLASM+= bn bn-586 SSLASM+= bn co-586 CFLAGS+= -DOPENSSL_BN_ASM_MONT -- cgit v1.2.3-55-g6feb