openssl/crypto/modes
XiaokangQian 954f45ba4c Optimize AES-GCM for uarchs with unroll and new instructions
Increase the block numbers to 8 for every iteration.  Increase the hash
table capacity.  Make use of EOR3 instruction to improve the performance.

This can improve performance 25-40% on out-of-order microarchitectures
with a large number of fast execution units, such as Neoverse V1.  We also
see 20-30% performance improvements on other architectures such as the M1.

Assembly code reviewd by Tom Cosgrove (ARM).

Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15916)
2022-01-25 14:30:00 +11:00
..
asm Optimize AES-GCM for uarchs with unroll and new instructions 2022-01-25 14:30:00 +11:00
build.info Optimize AES-GCM for uarchs with unroll and new instructions 2022-01-25 14:30:00 +11:00
cbc128.c Update copyright year 2021-04-08 13:04:41 +01:00
ccm128.c Update copyright year 2020-06-04 14:33:57 +01:00
cfb128.c Update copyright year 2021-04-08 13:04:41 +01:00
ctr128.c Update copyright year 2021-04-08 13:04:41 +01:00
cts128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
gcm128.c Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
ocb128.c Update copyright year 2020-11-26 14:18:57 +00:00
ofb128.c Update copyright year 2021-04-08 13:04:41 +01:00
siv128.c Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
wrap128.c Following the license change, modify the boilerplates in crypto/modes/ 2018-12-06 15:06:37 +01:00
xts128.c Add and use internal header that implements endianness check 2020-07-11 10:00:33 +02:00