]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
crypto: arm64/aes-modes - get rid of literal load of addend vector
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 23 Aug 2018 16:48:45 +0000 (17:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Nov 2020 18:18:44 +0000 (19:18 +0100)
commitfe4d386d6c2a497ec0020164647497e23f10bfdd
tree7896a832de29c454e955b4ee82695739a47e5e10
parent580a117919f3ae1390be6b4111253ee9595938f5
crypto: arm64/aes-modes - get rid of literal load of addend vector

commit ed6ed11830a9ded520db31a6e2b69b6b0a1eb0e2 upstream.

Replace the literal load of the addend vector with a sequence that
performs each add individually. This sequence is only 2 instructions
longer than the original, and 2% faster on Cortex-A53.

This is an improvement by itself, but also works around a Clang issue,
whose integrated assembler does not implement the GNU ARM asm syntax
completely, and does not support the =literal notation for FP registers
(more info at https://bugs.llvm.org/show_bug.cgi?id=38642)

Cc: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/crypto/aes-modes.S