CVSROOT:        /cvs
Module name:    src
Changes by:     js...@cvs.openbsd.org   2025/06/09 08:28:34

Modified files:
        lib/libcrypto/arch/i386: Makefile.inc 
        lib/libcrypto/bn/asm: bn-586.pl x86-mont.pl 
        lib/libcrypto/evp: e_aes.c 
        lib/libcrypto/modes: gcm128.c 
        lib/libcrypto/modes/asm: ghash-x86.pl 
        lib/libcrypto/sha/asm: sha1-586.pl sha512-586.pl 

Log message:
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@

Reply via email to