summaryrefslogtreecommitdiff
path: root/crypto/aegis128-core.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* crypto: aegis128 - duplicate init() and final() hooks in SIMD codeArd Biesheuvel2019-10-261-12/+26
| | | | | | | | | | In order to speed up aegis128 processing even more, duplicate the init() and final() routines as SIMD versions in their entirety. This results in a 2x speedup on ARM Cortex-A57 for ~1500 byte packets (using AES instructions). Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* crypto: aegis128 - avoid function pointers for parameterizationArd Biesheuvel2019-10-261-59/+46
| | | | | | | | | | Instead of passing around an ops structure with function pointers, which forces indirect calls to be used, refactor the code slightly so we can use ordinary function calls. At the same time, switch to a static key to decide whether or not the SIMD code path may be used. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* crypto: aegis128 - Fix -Wunused-const-variable warningYueHaibing2019-08-301-0/+11
| | | | | | | | | | | | crypto/aegis.h:27:32: warning: crypto_aegis_const defined but not used [-Wunused-const-variable=] crypto_aegis_const is only used in aegis128-core.c, just move the definition over there. Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: YueHaibing <yuehaibing@huawei.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* crypto: aegis128 - add support for SIMD accelerationArd Biesheuvel2019-08-151-0/+491
| | | | | | | | | Add some plumbing to allow the AEGIS128 code to be built with SIMD routines for acceleration. Reviewed-by: Ondrej Mosnacek <omosnace@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* Revert "crypto: aegis128 - add support for SIMD acceleration"Herbert Xu2019-08-021-481/+0
| | | | | | | | | | | | | | This reverts commit 3cd22a9ca7fcacfa00025ecf925c8a0121c7cc92 ("crypto: aegis128 - provide a SIMD implementation based on NEON intrinsics") and commit 467920a4b6c1cc41fdd55776be2d4a74d9d10469 ("crypto: aegis128 - add support for SIMD acceleration"). They cause compile errors on platforms other than ARM because the mechanism to selectively compile the SIMD code is broken. Repoted-by: Heiko Carstens <heiko.carstens@de.ibm.com> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* crypto: aegis128 - add support for SIMD accelerationArd Biesheuvel2019-07-261-0/+481
Add some plumbing to allow the AEGIS128 code to be built with SIMD routines for acceleration. Reviewed-by: Ondrej Mosnacek <omosnace@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>