zfs/module/icp
Joel Low bb9225ea86 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:
d5440dd2c2/gen/bcm/aes-gcm-avx2-x86_64-linux.S

See the original BoringSSL commit at
3b6e1be439.

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
2025-08-13 14:51:20 -07:00
..
algs Backport AVX2 AES-GCM implementation from BoringSSL 2025-08-13 14:51:20 -07:00
api SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
asm-aarch64 SPDX: license tags: Apache-2.0 2025-03-13 17:57:05 -07:00
asm-arm/sha2 SPDX: license tags: Apache-2.0 2025-03-13 17:57:05 -07:00
asm-ppc64 SPDX: license tags: Apache-2.0 2025-03-13 17:57:05 -07:00
asm-x86_64 Backport AVX2 AES-GCM implementation from BoringSSL 2025-08-13 14:51:20 -07:00
core Prefer VERIFY0(n) over VERIFY(n == 0) 2025-08-07 11:40:59 -07:00
include Backport AVX2 AES-GCM implementation from BoringSSL 2025-08-13 14:51:20 -07:00
io Prefer VERIFY0(n) over VERIFY(n == 0) 2025-08-07 11:40:59 -07:00
spi SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
illumos-crypto.c SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00