From: Mark Wooding Date: Wed, 18 Sep 2019 17:24:49 +0000 (+0100) Subject: symm/rijndael-arm64-crypto.S: Fix bogus element-to-GP move. X-Git-Tag: 2.4.3~4 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/catacomb/commitdiff_plain/354ea7a4eecb1c4046bebacc19cad55a5b571ec0 symm/rijndael-arm64-crypto.S: Fix bogus element-to-GP move. Spotted by Clang's assembler. GAS is obviously too lenient. (cherry picked from commit cead42fc5cf5ff8c1c13f123e4c002077b42f6cd) --- diff --git a/symm/rijndael-arm64-crypto.S b/symm/rijndael-arm64-crypto.S index 8739c193..9f68ae84 100644 --- a/symm/rijndael-arm64-crypto.S +++ b/symm/rijndael-arm64-crypto.S @@ -108,7 +108,7 @@ FUNC(rijndael_setup_arm64_crypto) // the byte substitution. dup v0.4s, w14 aese v0.16b, v1.16b // effectively, just SubBytes - mov w14, v0.4s[0] + mov w14, v0.s[0] b 2f // First word of the cycle. Byte substitution, rotation, and round @@ -116,7 +116,7 @@ FUNC(rijndael_setup_arm64_crypto) 1: ldrb w13, [x5], #1 // next round constant dup v0.4s, w14 aese v0.16b, v1.16b // effectively, just SubBytes - mov w14, v0.4s[0] + mov w14, v0.s[0] eor w14, w13, w14, ror #8 // Common ending: mix in the word from the previous cycle and store.