crypto: arm64/sha - avoid non-standard inline asm tricks
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 26 Apr 2017 16:11:32 +0000 (17:11 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 Nov 2018 07:20:36 +0000 (08:20 +0100)
commit0a953c058f7355c0077867d33cdfa7aa929f4b81
treea1948bdc9eb2969d1fd9cf20aff3d2f318b5ea8a
parentebcc69a97a2463271c20a0ea09906903c3295f3e
crypto: arm64/sha - avoid non-standard inline asm tricks

commit f4857f4c2ee9aa4e2aacac1a845352b00197fb57 upstream.

Replace the inline asm which exports struct offsets as ELF symbols
with proper const variables exposing the same values. This works
around an issue with Clang which does not interpret the "i" (or "I")
constraints in the same way as GCC.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/crypto/sha1-ce-core.S
arch/arm64/crypto/sha1-ce-glue.c
arch/arm64/crypto/sha2-ce-core.S
arch/arm64/crypto/sha2-ce-glue.c