Add GHASH AArch64/SIMD intrinsics implementation
* cipher/Makefile.am: Add 'cipher-gcm-aarch64-simd.c'. * cipher/cipher-gcm-aarch64-simd.c: New. * cipher/cipher-gcm.c [GCM_USE_AARCH64]: Add function prototypes for AArch64/SIMD implementation. (setupM) [GCM_USE_AARCH64]: Add setup for AArch64/SIMD implementation. * cipher/cipher-internal.h (GCM_USE_AARCH64): New. * configure.ac: Add 'cipher-gcm-aarch64-simd.c'.
Patch adds GHASH/GCM intrinsics implementation for
AArch64. This is for CPUs without crypto extensions
instruction set support.
Benchmark on Cortex-A53 (1152 Mhz):
Before:
| nanosecs/byte mebibytes/sec cycles/byte
GMAC_AES | 12.22 ns/B 78.07 MiB/s 14.07 c/B
After:
| nanosecs/byte mebibytes/sec cycles/byte
GMAC_AES | 7.38 ns/B 129.2 MiB/s 8.50 c/B
- Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>