base/asm-common.h, *.S: Add `INTFUNC' macro for internal subroutines.
[catacomb] / symm / rijndael-arm-crypto.S
index 49aa016..4d7312d 100644 (file)
@@ -30,8 +30,8 @@
 #include "config.h"
 #include "asm-common.h"
 
-       .globl  F(abort)
-       .globl  F(rijndael_rcon)
+       .extern F(abort)
+       .extern F(rijndael_rcon)
 
 ///--------------------------------------------------------------------------
 /// Main code.
@@ -52,7 +52,7 @@
        // Useful constants.
        .equ    maxrounds, 16           // maximum number of rounds
        .equ    maxblksz, 32            // maximum block size, in bytes
-       .equ    kbufsz, maxblksz*(maxrounds + 1) // size of a key-schedule buffer
+       .equ    kbufsz, maxblksz*(maxrounds + 1) // size of key-sched buffer
 
        // Context structure.
        .equ    nr, 0                   // number of rounds
@@ -211,9 +211,12 @@ FUNC(rijndael_setup_arm_crypto)
        // All done.
 9:     ldmfd   sp!, {r4-r9, pc}
 
-endswap_block:
+ENDFUNC
+
+INTFUNC(endswap_block)
        // End-swap R2 words starting at R1.  R1 is clobbered; R2 is not.
        // It's OK to work in 16-byte chunks.
+
        mov     r4, r2
 0:     vldmia  r1, {d0, d1}
        vrev32.8 q0, q0