base/regdump.h: Pass cooked register index to `REGDEF_GPX86_COMMON'.
[catacomb] / symm / rijndael-arm-crypto.S
index cbd60c8..1df81d9 100644 (file)
 /// MA 02111-1307, USA.
 
 ///--------------------------------------------------------------------------
-/// External definitions.
+/// Preliminaries.
 
 #include "config.h"
 #include "asm-common.h"
 
+       .arch   armv8-a
+       .fpu    crypto-neon-fp-armv8
+
        .extern F(abort)
        .extern F(rijndael_rcon)
 
+       .text
+
 ///--------------------------------------------------------------------------
 /// Main code.
 
-       .arch   armv8-a
-       .fpu    crypto-neon-fp-armv8
-
 /// The ARM crypto extension implements a little-endian version of AES
 /// (though the manual doesn't actually spell this out and you have to
 /// experiment), but Catacomb's internal interface presents as big-endian so
@@ -104,7 +106,7 @@ FUNC(rijndael_setup_arm_crypto)
        mla     r2, r1, r7, r1          // total key size in words
        leaextq r5, rijndael_rcon       // round constants
        sub     r8, r2, r3              // minus what we've copied already
-       veor    q1, q1                  // all-zero register for the key
+       vmov.i32 q1, #0                 // all-zero register for the key
        add     r8, r9, r8, lsl #2      // limit of the key buffer
        mov     r12, #0                 // position in current cycle