HomeFreeBSD

Backport AVX2 AES-GCM implementation from BoringSSL

Description

Backport AVX2 AES-GCM implementation from BoringSSL

This uses the AVX2 versions of the AESENC and PCLMULQDQ instructions; on
Zen 3 this provides an up to 80% performance improvement.

Original source:
https://github.com/google/boringssl/blob/d5440dd2c2c500ac2d3bba4afec47a054b4d99ae/gen/bcm/aes-gcm-avx2-x86_64-linux.S

See the original BoringSSL commit at
https://github.com/google/boringssl/commit/3b6e1be4391d96e81cee022f77f7bab85d51cf4e.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Rob Norris <robn@despairlabs.com>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Attila Fülöp <attila@fueloep.org>
Signed-off-by: Joel Low <joel@joelsplace.sg>
Closes #17058

Details

Provenance
Joel Low <joel@joelsplace.sg>Authored on Feb 15 2025, 3:37 AM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Aug 13 2025, 9:51 PM
Parents
rG885d929cf8ab: Fix missed assertion update in physical rewrite patch
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rGbb9225ea86dc: Backport AVX2 AES-GCM implementation from BoringSSL (authored by Joel Low <joel@joelsplace.sg>).Aug 13 2025, 9:51 PM