Message ID | 20191213154910.32479-1-broonie@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Herbert Xu |
Headers | show |
Series | arm64: crypto: Use modern annotations for assembly functions | expand |
On Fri, 13 Dec 2019 at 16:49, Mark Brown <broonie@kernel.org> wrote: > > In an effort to clarify and simplify the annotation of assembly functions > in the kernel new macros have been introduced. These replace ENTRY and > ENDPROC and also add a new annotation for static functions which previously > had no ENTRY equivalent. Update the annotations in the crypto code to the > new macros. > > There are a small number of files imported from OpenSSL where the assembly > is generated using perl programs, these are not currently annotated at all > and have not been modified. > > Signed-off-by: Mark Brown <broonie@kernel.org> Seems straightforward enough. Acked-by: Ard Biesheuvel <ardb@kernel.org> > --- > > I'm intending to do this for all the rest of the asm too, this is the > simplest directory and there's no direct interdependencies so starting > here. > It will also go through another tree, so good to keep this separate. > arch/arm64/crypto/aes-ce-ccm-core.S | 16 +++++------ > arch/arm64/crypto/aes-ce-core.S | 16 +++++------ > arch/arm64/crypto/aes-ce.S | 4 +-- > arch/arm64/crypto/aes-cipher-core.S | 8 +++--- > arch/arm64/crypto/aes-modes.S | 16 +++++------ > arch/arm64/crypto/aes-neon.S | 4 +-- > arch/arm64/crypto/aes-neonbs-core.S | 40 +++++++++++++-------------- > arch/arm64/crypto/chacha-neon-core.S | 16 +++++------ > arch/arm64/crypto/crct10dif-ce-core.S | 12 ++++---- > arch/arm64/crypto/ghash-ce-core.S | 8 +++--- > arch/arm64/crypto/nh-neon-core.S | 4 +-- > arch/arm64/crypto/sha1-ce-core.S | 4 +-- > arch/arm64/crypto/sha2-ce-core.S | 4 +-- > arch/arm64/crypto/sha3-ce-core.S | 4 +-- > arch/arm64/crypto/sha512-ce-core.S | 4 +-- > arch/arm64/crypto/sm3-ce-core.S | 4 +-- > arch/arm64/crypto/sm4-ce-core.S | 4 +-- > 17 files changed, 84 insertions(+), 84 deletions(-) > > diff --git a/arch/arm64/crypto/aes-ce-ccm-core.S b/arch/arm64/crypto/aes-ce-ccm-core.S > index 9add9bbc48d8..99a028e298ed 100644 > --- a/arch/arm64/crypto/aes-ce-ccm-core.S > +++ b/arch/arm64/crypto/aes-ce-ccm-core.S > @@ -15,7 +15,7 @@ > * void ce_aes_ccm_auth_data(u8 mac[], u8 const in[], u32 abytes, > * u32 *macp, u8 const rk[], u32 rounds); > */ > -ENTRY(ce_aes_ccm_auth_data) > +SYM_FUNC_START(ce_aes_ccm_auth_data) > ldr w8, [x3] /* leftover from prev round? */ > ld1 {v0.16b}, [x0] /* load mac */ > cbz w8, 1f > @@ -81,13 +81,13 @@ ENTRY(ce_aes_ccm_auth_data) > st1 {v0.16b}, [x0] > 10: str w8, [x3] > ret > -ENDPROC(ce_aes_ccm_auth_data) > +SYM_FUNC_END(ce_aes_ccm_auth_data) > > /* > * void ce_aes_ccm_final(u8 mac[], u8 const ctr[], u8 const rk[], > * u32 rounds); > */ > -ENTRY(ce_aes_ccm_final) > +SYM_FUNC_START(ce_aes_ccm_final) > ld1 {v3.4s}, [x2], #16 /* load first round key */ > ld1 {v0.16b}, [x0] /* load mac */ > cmp w3, #12 /* which key size? */ > @@ -121,7 +121,7 @@ ENTRY(ce_aes_ccm_final) > eor v0.16b, v0.16b, v1.16b /* en-/decrypt the mac */ > st1 {v0.16b}, [x0] /* store result */ > ret > -ENDPROC(ce_aes_ccm_final) > +SYM_FUNC_END(ce_aes_ccm_final) > > .macro aes_ccm_do_crypt,enc > ldr x8, [x6, #8] /* load lower ctr */ > @@ -212,10 +212,10 @@ CPU_LE( rev x8, x8 ) > * u8 const rk[], u32 rounds, u8 mac[], > * u8 ctr[]); > */ > -ENTRY(ce_aes_ccm_encrypt) > +SYM_FUNC_START(ce_aes_ccm_encrypt) > aes_ccm_do_crypt 1 > -ENDPROC(ce_aes_ccm_encrypt) > +SYM_FUNC_END(ce_aes_ccm_encrypt) > > -ENTRY(ce_aes_ccm_decrypt) > +SYM_FUNC_START(ce_aes_ccm_decrypt) > aes_ccm_do_crypt 0 > -ENDPROC(ce_aes_ccm_decrypt) > +SYM_FUNC_END(ce_aes_ccm_decrypt) > diff --git a/arch/arm64/crypto/aes-ce-core.S b/arch/arm64/crypto/aes-ce-core.S > index 76a30fe4ba8b..e52e13eb8fdb 100644 > --- a/arch/arm64/crypto/aes-ce-core.S > +++ b/arch/arm64/crypto/aes-ce-core.S > @@ -8,7 +8,7 @@ > > .arch armv8-a+crypto > > -ENTRY(__aes_ce_encrypt) > +SYM_FUNC_START(__aes_ce_encrypt) > sub w3, w3, #2 > ld1 {v0.16b}, [x2] > ld1 {v1.4s}, [x0], #16 > @@ -34,9 +34,9 @@ ENTRY(__aes_ce_encrypt) > eor v0.16b, v0.16b, v3.16b > st1 {v0.16b}, [x1] > ret > -ENDPROC(__aes_ce_encrypt) > +SYM_FUNC_END(__aes_ce_encrypt) > > -ENTRY(__aes_ce_decrypt) > +SYM_FUNC_START(__aes_ce_decrypt) > sub w3, w3, #2 > ld1 {v0.16b}, [x2] > ld1 {v1.4s}, [x0], #16 > @@ -62,23 +62,23 @@ ENTRY(__aes_ce_decrypt) > eor v0.16b, v0.16b, v3.16b > st1 {v0.16b}, [x1] > ret > -ENDPROC(__aes_ce_decrypt) > +SYM_FUNC_END(__aes_ce_decrypt) > > /* > * __aes_ce_sub() - use the aese instruction to perform the AES sbox > * substitution on each byte in 'input' > */ > -ENTRY(__aes_ce_sub) > +SYM_FUNC_START(__aes_ce_sub) > dup v1.4s, w0 > movi v0.16b, #0 > aese v0.16b, v1.16b > umov w0, v0.s[0] > ret > -ENDPROC(__aes_ce_sub) > +SYM_FUNC_END(__aes_ce_sub) > > -ENTRY(__aes_ce_invert) > +SYM_FUNC_START(__aes_ce_invert) > ld1 {v0.4s}, [x1] > aesimc v1.16b, v0.16b > st1 {v1.4s}, [x0] > ret > -ENDPROC(__aes_ce_invert) > +SYM_FUNC_END(__aes_ce_invert) > diff --git a/arch/arm64/crypto/aes-ce.S b/arch/arm64/crypto/aes-ce.S > index c132c49c89a8..45062553467f 100644 > --- a/arch/arm64/crypto/aes-ce.S > +++ b/arch/arm64/crypto/aes-ce.S > @@ -9,8 +9,8 @@ > #include <linux/linkage.h> > #include <asm/assembler.h> > > -#define AES_ENTRY(func) ENTRY(ce_ ## func) > -#define AES_ENDPROC(func) ENDPROC(ce_ ## func) > +#define AES_ENTRY(func) SYM_FUNC_START(ce_ ## func) > +#define AES_ENDPROC(func) SYM_FUNC_END(ce_ ## func) > > .arch armv8-a+crypto > > diff --git a/arch/arm64/crypto/aes-cipher-core.S b/arch/arm64/crypto/aes-cipher-core.S > index 423d0aebc570..c9d6955f8404 100644 > --- a/arch/arm64/crypto/aes-cipher-core.S > +++ b/arch/arm64/crypto/aes-cipher-core.S > @@ -122,11 +122,11 @@ CPU_BE( rev w7, w7 ) > ret > .endm > > -ENTRY(__aes_arm64_encrypt) > +SYM_FUNC_START(__aes_arm64_encrypt) > do_crypt fround, crypto_ft_tab, crypto_ft_tab + 1, 2 > -ENDPROC(__aes_arm64_encrypt) > +SYM_FUNC_END(__aes_arm64_encrypt) > > .align 5 > -ENTRY(__aes_arm64_decrypt) > +SYM_FUNC_START(__aes_arm64_decrypt) > do_crypt iround, crypto_it_tab, crypto_aes_inv_sbox, 0 > -ENDPROC(__aes_arm64_decrypt) > +SYM_FUNC_END(__aes_arm64_decrypt) > diff --git a/arch/arm64/crypto/aes-modes.S b/arch/arm64/crypto/aes-modes.S > index 131618389f1f..8a2faa42b57e 100644 > --- a/arch/arm64/crypto/aes-modes.S > +++ b/arch/arm64/crypto/aes-modes.S > @@ -22,26 +22,26 @@ > #define ST5(x...) x > #endif > > -aes_encrypt_block4x: > +SYM_FUNC_START_LOCAL(aes_encrypt_block4x) > encrypt_block4x v0, v1, v2, v3, w3, x2, x8, w7 > ret > -ENDPROC(aes_encrypt_block4x) > +SYM_FUNC_END(aes_encrypt_block4x) > > -aes_decrypt_block4x: > +SYM_FUNC_START_LOCAL(aes_decrypt_block4x) > decrypt_block4x v0, v1, v2, v3, w3, x2, x8, w7 > ret > -ENDPROC(aes_decrypt_block4x) > +SYM_FUNC_END(aes_decrypt_block4x) > > #if MAX_STRIDE == 5 > -aes_encrypt_block5x: > +SYM_FUNC_START_LOCAL(aes_encrypt_block5x) > encrypt_block5x v0, v1, v2, v3, v4, w3, x2, x8, w7 > ret > -ENDPROC(aes_encrypt_block5x) > +SYM_FUNC_END(aes_encrypt_block5x) > > -aes_decrypt_block5x: > +SYM_FUNC_START_LOCAL(aes_decrypt_block5x) > decrypt_block5x v0, v1, v2, v3, v4, w3, x2, x8, w7 > ret > -ENDPROC(aes_decrypt_block5x) > +SYM_FUNC_END(aes_decrypt_block5x) > #endif > > /* > diff --git a/arch/arm64/crypto/aes-neon.S b/arch/arm64/crypto/aes-neon.S > index 22d9b110cf78..247d34ddaab0 100644 > --- a/arch/arm64/crypto/aes-neon.S > +++ b/arch/arm64/crypto/aes-neon.S > @@ -8,8 +8,8 @@ > #include <linux/linkage.h> > #include <asm/assembler.h> > > -#define AES_ENTRY(func) ENTRY(neon_ ## func) > -#define AES_ENDPROC(func) ENDPROC(neon_ ## func) > +#define AES_ENTRY(func) SYM_FUNC_START(neon_ ## func) > +#define AES_ENDPROC(func) SYM_FUNC_END(neon_ ## func) > > xtsmask .req v7 > cbciv .req v7 > diff --git a/arch/arm64/crypto/aes-neonbs-core.S b/arch/arm64/crypto/aes-neonbs-core.S > index 65982039fa36..b357164379f6 100644 > --- a/arch/arm64/crypto/aes-neonbs-core.S > +++ b/arch/arm64/crypto/aes-neonbs-core.S > @@ -380,7 +380,7 @@ ISRM0: .octa 0x0306090c00070a0d01040b0e0205080f > /* > * void aesbs_convert_key(u8 out[], u32 const rk[], int rounds) > */ > -ENTRY(aesbs_convert_key) > +SYM_FUNC_START(aesbs_convert_key) > ld1 {v7.4s}, [x1], #16 // load round 0 key > ld1 {v17.4s}, [x1], #16 // load round 1 key > > @@ -425,10 +425,10 @@ ENTRY(aesbs_convert_key) > eor v17.16b, v17.16b, v7.16b > str q17, [x0] > ret > -ENDPROC(aesbs_convert_key) > +SYM_FUNC_END(aesbs_convert_key) > > .align 4 > -aesbs_encrypt8: > +SYM_FUNC_START_LOCAL(aesbs_encrypt8) > ldr q9, [bskey], #16 // round 0 key > ldr q8, M0SR > ldr q24, SR > @@ -488,10 +488,10 @@ aesbs_encrypt8: > eor v2.16b, v2.16b, v12.16b > eor v5.16b, v5.16b, v12.16b > ret > -ENDPROC(aesbs_encrypt8) > +SYM_FUNC_END(aesbs_encrypt8) > > .align 4 > -aesbs_decrypt8: > +SYM_FUNC_START_LOCAL(aesbs_decrypt8) > lsl x9, rounds, #7 > add bskey, bskey, x9 > > @@ -553,7 +553,7 @@ aesbs_decrypt8: > eor v3.16b, v3.16b, v12.16b > eor v5.16b, v5.16b, v12.16b > ret > -ENDPROC(aesbs_decrypt8) > +SYM_FUNC_END(aesbs_decrypt8) > > /* > * aesbs_ecb_encrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, > @@ -621,21 +621,21 @@ ENDPROC(aesbs_decrypt8) > .endm > > .align 4 > -ENTRY(aesbs_ecb_encrypt) > +SYM_FUNC_START(aesbs_ecb_encrypt) > __ecb_crypt aesbs_encrypt8, v0, v1, v4, v6, v3, v7, v2, v5 > -ENDPROC(aesbs_ecb_encrypt) > +SYM_FUNC_END(aesbs_ecb_encrypt) > > .align 4 > -ENTRY(aesbs_ecb_decrypt) > +SYM_FUNC_START(aesbs_ecb_decrypt) > __ecb_crypt aesbs_decrypt8, v0, v1, v6, v4, v2, v7, v3, v5 > -ENDPROC(aesbs_ecb_decrypt) > +SYM_FUNC_END(aesbs_ecb_decrypt) > > /* > * aesbs_cbc_decrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, > * int blocks, u8 iv[]) > */ > .align 4 > -ENTRY(aesbs_cbc_decrypt) > +SYM_FUNC_START(aesbs_cbc_decrypt) > frame_push 6 > > mov x19, x0 > @@ -720,7 +720,7 @@ ENTRY(aesbs_cbc_decrypt) > > 2: frame_pop > ret > -ENDPROC(aesbs_cbc_decrypt) > +SYM_FUNC_END(aesbs_cbc_decrypt) > > .macro next_tweak, out, in, const, tmp > sshr \tmp\().2d, \in\().2d, #63 > @@ -736,7 +736,7 @@ ENDPROC(aesbs_cbc_decrypt) > * aesbs_xts_decrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, > * int blocks, u8 iv[]) > */ > -__xts_crypt8: > +SYM_FUNC_START_LOCAL(__xts_crypt8) > mov x6, #1 > lsl x6, x6, x23 > subs w23, w23, #8 > @@ -789,7 +789,7 @@ __xts_crypt8: > 0: mov bskey, x21 > mov rounds, x22 > br x7 > -ENDPROC(__xts_crypt8) > +SYM_FUNC_END(__xts_crypt8) > > .macro __xts_crypt, do8, o0, o1, o2, o3, o4, o5, o6, o7 > frame_push 6, 64 > @@ -854,13 +854,13 @@ ENDPROC(__xts_crypt8) > ret > .endm > > -ENTRY(aesbs_xts_encrypt) > +SYM_FUNC_START(aesbs_xts_encrypt) > __xts_crypt aesbs_encrypt8, v0, v1, v4, v6, v3, v7, v2, v5 > -ENDPROC(aesbs_xts_encrypt) > +SYM_FUNC_END(aesbs_xts_encrypt) > > -ENTRY(aesbs_xts_decrypt) > +SYM_FUNC_START(aesbs_xts_decrypt) > __xts_crypt aesbs_decrypt8, v0, v1, v6, v4, v2, v7, v3, v5 > -ENDPROC(aesbs_xts_decrypt) > +SYM_FUNC_END(aesbs_xts_decrypt) > > .macro next_ctr, v > mov \v\().d[1], x8 > @@ -874,7 +874,7 @@ ENDPROC(aesbs_xts_decrypt) > * aesbs_ctr_encrypt(u8 out[], u8 const in[], u8 const rk[], > * int rounds, int blocks, u8 iv[], u8 final[]) > */ > -ENTRY(aesbs_ctr_encrypt) > +SYM_FUNC_START(aesbs_ctr_encrypt) > frame_push 8 > > mov x19, x0 > @@ -1002,4 +1002,4 @@ CPU_LE( rev x8, x8 ) > 7: cbz x25, 8b > st1 {v5.16b}, [x25] > b 8b > -ENDPROC(aesbs_ctr_encrypt) > +SYM_FUNC_END(aesbs_ctr_encrypt) > diff --git a/arch/arm64/crypto/chacha-neon-core.S b/arch/arm64/crypto/chacha-neon-core.S > index 706c4e10e9e2..e90386a7db8e 100644 > --- a/arch/arm64/crypto/chacha-neon-core.S > +++ b/arch/arm64/crypto/chacha-neon-core.S > @@ -36,7 +36,7 @@ > * > * Clobbers: w3, x10, v4, v12 > */ > -chacha_permute: > +SYM_FUNC_START_LOCAL(chacha_permute) > > adr_l x10, ROT8 > ld1 {v12.4s}, [x10] > @@ -104,9 +104,9 @@ chacha_permute: > b.ne .Ldoubleround > > ret > -ENDPROC(chacha_permute) > +SYM_FUNC_END(chacha_permute) > > -ENTRY(chacha_block_xor_neon) > +SYM_FUNC_START(chacha_block_xor_neon) > // x0: Input state matrix, s > // x1: 1 data block output, o > // x2: 1 data block input, i > @@ -143,9 +143,9 @@ ENTRY(chacha_block_xor_neon) > > ldp x29, x30, [sp], #16 > ret > -ENDPROC(chacha_block_xor_neon) > +SYM_FUNC_END(chacha_block_xor_neon) > > -ENTRY(hchacha_block_neon) > +SYM_FUNC_START(hchacha_block_neon) > // x0: Input state matrix, s > // x1: output (8 32-bit words) > // w2: nrounds > @@ -163,7 +163,7 @@ ENTRY(hchacha_block_neon) > > ldp x29, x30, [sp], #16 > ret > -ENDPROC(hchacha_block_neon) > +SYM_FUNC_END(hchacha_block_neon) > > a0 .req w12 > a1 .req w13 > @@ -183,7 +183,7 @@ ENDPROC(hchacha_block_neon) > a15 .req w28 > > .align 6 > -ENTRY(chacha_4block_xor_neon) > +SYM_FUNC_START(chacha_4block_xor_neon) > frame_push 10 > > // x0: Input state matrix, s > @@ -845,7 +845,7 @@ CPU_BE( rev a15, a15 ) > eor v31.16b, v31.16b, v3.16b > st1 {v28.16b-v31.16b}, [x1] > b .Lout > -ENDPROC(chacha_4block_xor_neon) > +SYM_FUNC_END(chacha_4block_xor_neon) > > .section ".rodata", "a", %progbits > .align L1_CACHE_SHIFT > diff --git a/arch/arm64/crypto/crct10dif-ce-core.S b/arch/arm64/crypto/crct10dif-ce-core.S > index e545b42e6a46..5a95c2628fbf 100644 > --- a/arch/arm64/crypto/crct10dif-ce-core.S > +++ b/arch/arm64/crypto/crct10dif-ce-core.S > @@ -131,7 +131,7 @@ > tbl bd4.16b, {\bd\().16b}, perm4.16b > .endm > > -__pmull_p8_core: > +SYM_FUNC_START_LOCAL(__pmull_p8_core) > .L__pmull_p8_core: > ext t4.8b, ad.8b, ad.8b, #1 // A1 > ext t5.8b, ad.8b, ad.8b, #2 // A2 > @@ -194,7 +194,7 @@ __pmull_p8_core: > eor t4.16b, t4.16b, t5.16b > eor t6.16b, t6.16b, t3.16b > ret > -ENDPROC(__pmull_p8_core) > +SYM_FUNC_END(__pmull_p8_core) > > .macro __pmull_p8, rq, ad, bd, i > .ifnc \bd, fold_consts > @@ -488,9 +488,9 @@ CPU_LE( ext v7.16b, v7.16b, v7.16b, #8 ) > // > // Assumes len >= 16. > // > -ENTRY(crc_t10dif_pmull_p8) > +SYM_FUNC_START(crc_t10dif_pmull_p8) > crc_t10dif_pmull p8 > -ENDPROC(crc_t10dif_pmull_p8) > +SYM_FUNC_END(crc_t10dif_pmull_p8) > > .align 5 > // > @@ -498,9 +498,9 @@ ENDPROC(crc_t10dif_pmull_p8) > // > // Assumes len >= 16. > // > -ENTRY(crc_t10dif_pmull_p64) > +SYM_FUNC_START(crc_t10dif_pmull_p64) > crc_t10dif_pmull p64 > -ENDPROC(crc_t10dif_pmull_p64) > +SYM_FUNC_END(crc_t10dif_pmull_p64) > > .section ".rodata", "a" > .align 4 > diff --git a/arch/arm64/crypto/ghash-ce-core.S b/arch/arm64/crypto/ghash-ce-core.S > index a791c4adf8e6..084c6a30b03a 100644 > --- a/arch/arm64/crypto/ghash-ce-core.S > +++ b/arch/arm64/crypto/ghash-ce-core.S > @@ -350,13 +350,13 @@ CPU_LE( rev64 T1.16b, T1.16b ) > * void pmull_ghash_update(int blocks, u64 dg[], const char *src, > * struct ghash_key const *k, const char *head) > */ > -ENTRY(pmull_ghash_update_p64) > +SYM_FUNC_START(pmull_ghash_update_p64) > __pmull_ghash p64 > -ENDPROC(pmull_ghash_update_p64) > +SYM_FUNC_END(pmull_ghash_update_p64) > > -ENTRY(pmull_ghash_update_p8) > +SYM_FUNC_START(pmull_ghash_update_p8) > __pmull_ghash p8 > -ENDPROC(pmull_ghash_update_p8) > +SYM_FUNC_END(pmull_ghash_update_p8) > > KS0 .req v8 > KS1 .req v9 > diff --git a/arch/arm64/crypto/nh-neon-core.S b/arch/arm64/crypto/nh-neon-core.S > index e05570c38de7..51c0a534ef87 100644 > --- a/arch/arm64/crypto/nh-neon-core.S > +++ b/arch/arm64/crypto/nh-neon-core.S > @@ -62,7 +62,7 @@ > * > * It's guaranteed that message_len % 16 == 0. > */ > -ENTRY(nh_neon) > +SYM_FUNC_START(nh_neon) > > ld1 {K0.4s,K1.4s}, [KEY], #32 > movi PASS0_SUMS.2d, #0 > @@ -100,4 +100,4 @@ ENTRY(nh_neon) > addp T1.2d, PASS2_SUMS.2d, PASS3_SUMS.2d > st1 {T0.16b,T1.16b}, [HASH] > ret > -ENDPROC(nh_neon) > +SYM_FUNC_END(nh_neon) > diff --git a/arch/arm64/crypto/sha1-ce-core.S b/arch/arm64/crypto/sha1-ce-core.S > index c2ce1f820706..92d0d2753e81 100644 > --- a/arch/arm64/crypto/sha1-ce-core.S > +++ b/arch/arm64/crypto/sha1-ce-core.S > @@ -65,7 +65,7 @@ > * void sha1_ce_transform(struct sha1_ce_state *sst, u8 const *src, > * int blocks) > */ > -ENTRY(sha1_ce_transform) > +SYM_FUNC_START(sha1_ce_transform) > frame_push 3 > > mov x19, x0 > @@ -160,4 +160,4 @@ CPU_LE( rev32 v11.16b, v11.16b ) > str dgb, [x19, #16] > frame_pop > ret > -ENDPROC(sha1_ce_transform) > +SYM_FUNC_END(sha1_ce_transform) > diff --git a/arch/arm64/crypto/sha2-ce-core.S b/arch/arm64/crypto/sha2-ce-core.S > index 6f728a419009..3f9d0f326987 100644 > --- a/arch/arm64/crypto/sha2-ce-core.S > +++ b/arch/arm64/crypto/sha2-ce-core.S > @@ -75,7 +75,7 @@ > * int blocks) > */ > .text > -ENTRY(sha2_ce_transform) > +SYM_FUNC_START(sha2_ce_transform) > frame_push 3 > > mov x19, x0 > @@ -166,4 +166,4 @@ CPU_LE( rev32 v19.16b, v19.16b ) > 4: st1 {dgav.4s, dgbv.4s}, [x19] > frame_pop > ret > -ENDPROC(sha2_ce_transform) > +SYM_FUNC_END(sha2_ce_transform) > diff --git a/arch/arm64/crypto/sha3-ce-core.S b/arch/arm64/crypto/sha3-ce-core.S > index a7d587fa54f6..1cfb768df350 100644 > --- a/arch/arm64/crypto/sha3-ce-core.S > +++ b/arch/arm64/crypto/sha3-ce-core.S > @@ -40,7 +40,7 @@ > * sha3_ce_transform(u64 *st, const u8 *data, int blocks, int dg_size) > */ > .text > -ENTRY(sha3_ce_transform) > +SYM_FUNC_START(sha3_ce_transform) > frame_push 4 > > mov x19, x0 > @@ -218,7 +218,7 @@ ENTRY(sha3_ce_transform) > st1 {v24.1d}, [x19] > frame_pop > ret > -ENDPROC(sha3_ce_transform) > +SYM_FUNC_END(sha3_ce_transform) > > .section ".rodata", "a" > .align 8 > diff --git a/arch/arm64/crypto/sha512-ce-core.S b/arch/arm64/crypto/sha512-ce-core.S > index ce65e3abe4f2..cde606c0323e 100644 > --- a/arch/arm64/crypto/sha512-ce-core.S > +++ b/arch/arm64/crypto/sha512-ce-core.S > @@ -106,7 +106,7 @@ > * int blocks) > */ > .text > -ENTRY(sha512_ce_transform) > +SYM_FUNC_START(sha512_ce_transform) > frame_push 3 > > mov x19, x0 > @@ -216,4 +216,4 @@ CPU_LE( rev64 v19.16b, v19.16b ) > 3: st1 {v8.2d-v11.2d}, [x19] > frame_pop > ret > -ENDPROC(sha512_ce_transform) > +SYM_FUNC_END(sha512_ce_transform) > diff --git a/arch/arm64/crypto/sm3-ce-core.S b/arch/arm64/crypto/sm3-ce-core.S > index d50d187906cb..ef97d3187cb7 100644 > --- a/arch/arm64/crypto/sm3-ce-core.S > +++ b/arch/arm64/crypto/sm3-ce-core.S > @@ -73,7 +73,7 @@ > * int blocks) > */ > .text > -ENTRY(sm3_ce_transform) > +SYM_FUNC_START(sm3_ce_transform) > /* load state */ > ld1 {v8.4s-v9.4s}, [x0] > rev64 v8.4s, v8.4s > @@ -131,7 +131,7 @@ CPU_LE( rev32 v3.16b, v3.16b ) > ext v9.16b, v9.16b, v9.16b, #8 > st1 {v8.4s-v9.4s}, [x0] > ret > -ENDPROC(sm3_ce_transform) > +SYM_FUNC_END(sm3_ce_transform) > > .section ".rodata", "a" > .align 3 > diff --git a/arch/arm64/crypto/sm4-ce-core.S b/arch/arm64/crypto/sm4-ce-core.S > index af3bfbc3f4d4..4ac6cfbc5797 100644 > --- a/arch/arm64/crypto/sm4-ce-core.S > +++ b/arch/arm64/crypto/sm4-ce-core.S > @@ -15,7 +15,7 @@ > * void sm4_ce_do_crypt(const u32 *rk, u32 *out, const u32 *in); > */ > .text > -ENTRY(sm4_ce_do_crypt) > +SYM_FUNC_START(sm4_ce_do_crypt) > ld1 {v8.4s}, [x2] > ld1 {v0.4s-v3.4s}, [x0], #64 > CPU_LE( rev32 v8.16b, v8.16b ) > @@ -33,4 +33,4 @@ CPU_LE( rev32 v8.16b, v8.16b ) > CPU_LE( rev32 v8.16b, v8.16b ) > st1 {v8.4s}, [x1] > ret > -ENDPROC(sm4_ce_do_crypt) > +SYM_FUNC_END(sm4_ce_do_crypt) > -- > 2.20.1 >
On Fri, Dec 13, 2019 at 03:49:10PM +0000, Mark Brown wrote: > In an effort to clarify and simplify the annotation of assembly functions > in the kernel new macros have been introduced. These replace ENTRY and > ENDPROC and also add a new annotation for static functions which previously > had no ENTRY equivalent. Update the annotations in the crypto code to the > new macros. > > There are a small number of files imported from OpenSSL where the assembly > is generated using perl programs, these are not currently annotated at all > and have not been modified. > > Signed-off-by: Mark Brown <broonie@kernel.org> > --- > > I'm intending to do this for all the rest of the asm too, this is the > simplest directory and there's no direct interdependencies so starting > here. > > arch/arm64/crypto/aes-ce-ccm-core.S | 16 +++++------ > arch/arm64/crypto/aes-ce-core.S | 16 +++++------ > arch/arm64/crypto/aes-ce.S | 4 +-- > arch/arm64/crypto/aes-cipher-core.S | 8 +++--- > arch/arm64/crypto/aes-modes.S | 16 +++++------ > arch/arm64/crypto/aes-neon.S | 4 +-- > arch/arm64/crypto/aes-neonbs-core.S | 40 +++++++++++++-------------- > arch/arm64/crypto/chacha-neon-core.S | 16 +++++------ > arch/arm64/crypto/crct10dif-ce-core.S | 12 ++++---- > arch/arm64/crypto/ghash-ce-core.S | 8 +++--- > arch/arm64/crypto/nh-neon-core.S | 4 +-- > arch/arm64/crypto/sha1-ce-core.S | 4 +-- > arch/arm64/crypto/sha2-ce-core.S | 4 +-- > arch/arm64/crypto/sha3-ce-core.S | 4 +-- > arch/arm64/crypto/sha512-ce-core.S | 4 +-- > arch/arm64/crypto/sm3-ce-core.S | 4 +-- > arch/arm64/crypto/sm4-ce-core.S | 4 +-- > 17 files changed, 84 insertions(+), 84 deletions(-) Patch applied. Thanks.
diff --git a/arch/arm64/crypto/aes-ce-ccm-core.S b/arch/arm64/crypto/aes-ce-ccm-core.S index 9add9bbc48d8..99a028e298ed 100644 --- a/arch/arm64/crypto/aes-ce-ccm-core.S +++ b/arch/arm64/crypto/aes-ce-ccm-core.S @@ -15,7 +15,7 @@ * void ce_aes_ccm_auth_data(u8 mac[], u8 const in[], u32 abytes, * u32 *macp, u8 const rk[], u32 rounds); */ -ENTRY(ce_aes_ccm_auth_data) +SYM_FUNC_START(ce_aes_ccm_auth_data) ldr w8, [x3] /* leftover from prev round? */ ld1 {v0.16b}, [x0] /* load mac */ cbz w8, 1f @@ -81,13 +81,13 @@ ENTRY(ce_aes_ccm_auth_data) st1 {v0.16b}, [x0] 10: str w8, [x3] ret -ENDPROC(ce_aes_ccm_auth_data) +SYM_FUNC_END(ce_aes_ccm_auth_data) /* * void ce_aes_ccm_final(u8 mac[], u8 const ctr[], u8 const rk[], * u32 rounds); */ -ENTRY(ce_aes_ccm_final) +SYM_FUNC_START(ce_aes_ccm_final) ld1 {v3.4s}, [x2], #16 /* load first round key */ ld1 {v0.16b}, [x0] /* load mac */ cmp w3, #12 /* which key size? */ @@ -121,7 +121,7 @@ ENTRY(ce_aes_ccm_final) eor v0.16b, v0.16b, v1.16b /* en-/decrypt the mac */ st1 {v0.16b}, [x0] /* store result */ ret -ENDPROC(ce_aes_ccm_final) +SYM_FUNC_END(ce_aes_ccm_final) .macro aes_ccm_do_crypt,enc ldr x8, [x6, #8] /* load lower ctr */ @@ -212,10 +212,10 @@ CPU_LE( rev x8, x8 ) * u8 const rk[], u32 rounds, u8 mac[], * u8 ctr[]); */ -ENTRY(ce_aes_ccm_encrypt) +SYM_FUNC_START(ce_aes_ccm_encrypt) aes_ccm_do_crypt 1 -ENDPROC(ce_aes_ccm_encrypt) +SYM_FUNC_END(ce_aes_ccm_encrypt) -ENTRY(ce_aes_ccm_decrypt) +SYM_FUNC_START(ce_aes_ccm_decrypt) aes_ccm_do_crypt 0 -ENDPROC(ce_aes_ccm_decrypt) +SYM_FUNC_END(ce_aes_ccm_decrypt) diff --git a/arch/arm64/crypto/aes-ce-core.S b/arch/arm64/crypto/aes-ce-core.S index 76a30fe4ba8b..e52e13eb8fdb 100644 --- a/arch/arm64/crypto/aes-ce-core.S +++ b/arch/arm64/crypto/aes-ce-core.S @@ -8,7 +8,7 @@ .arch armv8-a+crypto -ENTRY(__aes_ce_encrypt) +SYM_FUNC_START(__aes_ce_encrypt) sub w3, w3, #2 ld1 {v0.16b}, [x2] ld1 {v1.4s}, [x0], #16 @@ -34,9 +34,9 @@ ENTRY(__aes_ce_encrypt) eor v0.16b, v0.16b, v3.16b st1 {v0.16b}, [x1] ret -ENDPROC(__aes_ce_encrypt) +SYM_FUNC_END(__aes_ce_encrypt) -ENTRY(__aes_ce_decrypt) +SYM_FUNC_START(__aes_ce_decrypt) sub w3, w3, #2 ld1 {v0.16b}, [x2] ld1 {v1.4s}, [x0], #16 @@ -62,23 +62,23 @@ ENTRY(__aes_ce_decrypt) eor v0.16b, v0.16b, v3.16b st1 {v0.16b}, [x1] ret -ENDPROC(__aes_ce_decrypt) +SYM_FUNC_END(__aes_ce_decrypt) /* * __aes_ce_sub() - use the aese instruction to perform the AES sbox * substitution on each byte in 'input' */ -ENTRY(__aes_ce_sub) +SYM_FUNC_START(__aes_ce_sub) dup v1.4s, w0 movi v0.16b, #0 aese v0.16b, v1.16b umov w0, v0.s[0] ret -ENDPROC(__aes_ce_sub) +SYM_FUNC_END(__aes_ce_sub) -ENTRY(__aes_ce_invert) +SYM_FUNC_START(__aes_ce_invert) ld1 {v0.4s}, [x1] aesimc v1.16b, v0.16b st1 {v1.4s}, [x0] ret -ENDPROC(__aes_ce_invert) +SYM_FUNC_END(__aes_ce_invert) diff --git a/arch/arm64/crypto/aes-ce.S b/arch/arm64/crypto/aes-ce.S index c132c49c89a8..45062553467f 100644 --- a/arch/arm64/crypto/aes-ce.S +++ b/arch/arm64/crypto/aes-ce.S @@ -9,8 +9,8 @@ #include <linux/linkage.h> #include <asm/assembler.h> -#define AES_ENTRY(func) ENTRY(ce_ ## func) -#define AES_ENDPROC(func) ENDPROC(ce_ ## func) +#define AES_ENTRY(func) SYM_FUNC_START(ce_ ## func) +#define AES_ENDPROC(func) SYM_FUNC_END(ce_ ## func) .arch armv8-a+crypto diff --git a/arch/arm64/crypto/aes-cipher-core.S b/arch/arm64/crypto/aes-cipher-core.S index 423d0aebc570..c9d6955f8404 100644 --- a/arch/arm64/crypto/aes-cipher-core.S +++ b/arch/arm64/crypto/aes-cipher-core.S @@ -122,11 +122,11 @@ CPU_BE( rev w7, w7 ) ret .endm -ENTRY(__aes_arm64_encrypt) +SYM_FUNC_START(__aes_arm64_encrypt) do_crypt fround, crypto_ft_tab, crypto_ft_tab + 1, 2 -ENDPROC(__aes_arm64_encrypt) +SYM_FUNC_END(__aes_arm64_encrypt) .align 5 -ENTRY(__aes_arm64_decrypt) +SYM_FUNC_START(__aes_arm64_decrypt) do_crypt iround, crypto_it_tab, crypto_aes_inv_sbox, 0 -ENDPROC(__aes_arm64_decrypt) +SYM_FUNC_END(__aes_arm64_decrypt) diff --git a/arch/arm64/crypto/aes-modes.S b/arch/arm64/crypto/aes-modes.S index 131618389f1f..8a2faa42b57e 100644 --- a/arch/arm64/crypto/aes-modes.S +++ b/arch/arm64/crypto/aes-modes.S @@ -22,26 +22,26 @@ #define ST5(x...) x #endif -aes_encrypt_block4x: +SYM_FUNC_START_LOCAL(aes_encrypt_block4x) encrypt_block4x v0, v1, v2, v3, w3, x2, x8, w7 ret -ENDPROC(aes_encrypt_block4x) +SYM_FUNC_END(aes_encrypt_block4x) -aes_decrypt_block4x: +SYM_FUNC_START_LOCAL(aes_decrypt_block4x) decrypt_block4x v0, v1, v2, v3, w3, x2, x8, w7 ret -ENDPROC(aes_decrypt_block4x) +SYM_FUNC_END(aes_decrypt_block4x) #if MAX_STRIDE == 5 -aes_encrypt_block5x: +SYM_FUNC_START_LOCAL(aes_encrypt_block5x) encrypt_block5x v0, v1, v2, v3, v4, w3, x2, x8, w7 ret -ENDPROC(aes_encrypt_block5x) +SYM_FUNC_END(aes_encrypt_block5x) -aes_decrypt_block5x: +SYM_FUNC_START_LOCAL(aes_decrypt_block5x) decrypt_block5x v0, v1, v2, v3, v4, w3, x2, x8, w7 ret -ENDPROC(aes_decrypt_block5x) +SYM_FUNC_END(aes_decrypt_block5x) #endif /* diff --git a/arch/arm64/crypto/aes-neon.S b/arch/arm64/crypto/aes-neon.S index 22d9b110cf78..247d34ddaab0 100644 --- a/arch/arm64/crypto/aes-neon.S +++ b/arch/arm64/crypto/aes-neon.S @@ -8,8 +8,8 @@ #include <linux/linkage.h> #include <asm/assembler.h> -#define AES_ENTRY(func) ENTRY(neon_ ## func) -#define AES_ENDPROC(func) ENDPROC(neon_ ## func) +#define AES_ENTRY(func) SYM_FUNC_START(neon_ ## func) +#define AES_ENDPROC(func) SYM_FUNC_END(neon_ ## func) xtsmask .req v7 cbciv .req v7 diff --git a/arch/arm64/crypto/aes-neonbs-core.S b/arch/arm64/crypto/aes-neonbs-core.S index 65982039fa36..b357164379f6 100644 --- a/arch/arm64/crypto/aes-neonbs-core.S +++ b/arch/arm64/crypto/aes-neonbs-core.S @@ -380,7 +380,7 @@ ISRM0: .octa 0x0306090c00070a0d01040b0e0205080f /* * void aesbs_convert_key(u8 out[], u32 const rk[], int rounds) */ -ENTRY(aesbs_convert_key) +SYM_FUNC_START(aesbs_convert_key) ld1 {v7.4s}, [x1], #16 // load round 0 key ld1 {v17.4s}, [x1], #16 // load round 1 key @@ -425,10 +425,10 @@ ENTRY(aesbs_convert_key) eor v17.16b, v17.16b, v7.16b str q17, [x0] ret -ENDPROC(aesbs_convert_key) +SYM_FUNC_END(aesbs_convert_key) .align 4 -aesbs_encrypt8: +SYM_FUNC_START_LOCAL(aesbs_encrypt8) ldr q9, [bskey], #16 // round 0 key ldr q8, M0SR ldr q24, SR @@ -488,10 +488,10 @@ aesbs_encrypt8: eor v2.16b, v2.16b, v12.16b eor v5.16b, v5.16b, v12.16b ret -ENDPROC(aesbs_encrypt8) +SYM_FUNC_END(aesbs_encrypt8) .align 4 -aesbs_decrypt8: +SYM_FUNC_START_LOCAL(aesbs_decrypt8) lsl x9, rounds, #7 add bskey, bskey, x9 @@ -553,7 +553,7 @@ aesbs_decrypt8: eor v3.16b, v3.16b, v12.16b eor v5.16b, v5.16b, v12.16b ret -ENDPROC(aesbs_decrypt8) +SYM_FUNC_END(aesbs_decrypt8) /* * aesbs_ecb_encrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, @@ -621,21 +621,21 @@ ENDPROC(aesbs_decrypt8) .endm .align 4 -ENTRY(aesbs_ecb_encrypt) +SYM_FUNC_START(aesbs_ecb_encrypt) __ecb_crypt aesbs_encrypt8, v0, v1, v4, v6, v3, v7, v2, v5 -ENDPROC(aesbs_ecb_encrypt) +SYM_FUNC_END(aesbs_ecb_encrypt) .align 4 -ENTRY(aesbs_ecb_decrypt) +SYM_FUNC_START(aesbs_ecb_decrypt) __ecb_crypt aesbs_decrypt8, v0, v1, v6, v4, v2, v7, v3, v5 -ENDPROC(aesbs_ecb_decrypt) +SYM_FUNC_END(aesbs_ecb_decrypt) /* * aesbs_cbc_decrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, * int blocks, u8 iv[]) */ .align 4 -ENTRY(aesbs_cbc_decrypt) +SYM_FUNC_START(aesbs_cbc_decrypt) frame_push 6 mov x19, x0 @@ -720,7 +720,7 @@ ENTRY(aesbs_cbc_decrypt) 2: frame_pop ret -ENDPROC(aesbs_cbc_decrypt) +SYM_FUNC_END(aesbs_cbc_decrypt) .macro next_tweak, out, in, const, tmp sshr \tmp\().2d, \in\().2d, #63 @@ -736,7 +736,7 @@ ENDPROC(aesbs_cbc_decrypt) * aesbs_xts_decrypt(u8 out[], u8 const in[], u8 const rk[], int rounds, * int blocks, u8 iv[]) */ -__xts_crypt8: +SYM_FUNC_START_LOCAL(__xts_crypt8) mov x6, #1 lsl x6, x6, x23 subs w23, w23, #8 @@ -789,7 +789,7 @@ __xts_crypt8: 0: mov bskey, x21 mov rounds, x22 br x7 -ENDPROC(__xts_crypt8) +SYM_FUNC_END(__xts_crypt8) .macro __xts_crypt, do8, o0, o1, o2, o3, o4, o5, o6, o7 frame_push 6, 64 @@ -854,13 +854,13 @@ ENDPROC(__xts_crypt8) ret .endm -ENTRY(aesbs_xts_encrypt) +SYM_FUNC_START(aesbs_xts_encrypt) __xts_crypt aesbs_encrypt8, v0, v1, v4, v6, v3, v7, v2, v5 -ENDPROC(aesbs_xts_encrypt) +SYM_FUNC_END(aesbs_xts_encrypt) -ENTRY(aesbs_xts_decrypt) +SYM_FUNC_START(aesbs_xts_decrypt) __xts_crypt aesbs_decrypt8, v0, v1, v6, v4, v2, v7, v3, v5 -ENDPROC(aesbs_xts_decrypt) +SYM_FUNC_END(aesbs_xts_decrypt) .macro next_ctr, v mov \v\().d[1], x8 @@ -874,7 +874,7 @@ ENDPROC(aesbs_xts_decrypt) * aesbs_ctr_encrypt(u8 out[], u8 const in[], u8 const rk[], * int rounds, int blocks, u8 iv[], u8 final[]) */ -ENTRY(aesbs_ctr_encrypt) +SYM_FUNC_START(aesbs_ctr_encrypt) frame_push 8 mov x19, x0 @@ -1002,4 +1002,4 @@ CPU_LE( rev x8, x8 ) 7: cbz x25, 8b st1 {v5.16b}, [x25] b 8b -ENDPROC(aesbs_ctr_encrypt) +SYM_FUNC_END(aesbs_ctr_encrypt) diff --git a/arch/arm64/crypto/chacha-neon-core.S b/arch/arm64/crypto/chacha-neon-core.S index 706c4e10e9e2..e90386a7db8e 100644 --- a/arch/arm64/crypto/chacha-neon-core.S +++ b/arch/arm64/crypto/chacha-neon-core.S @@ -36,7 +36,7 @@ * * Clobbers: w3, x10, v4, v12 */ -chacha_permute: +SYM_FUNC_START_LOCAL(chacha_permute) adr_l x10, ROT8 ld1 {v12.4s}, [x10] @@ -104,9 +104,9 @@ chacha_permute: b.ne .Ldoubleround ret -ENDPROC(chacha_permute) +SYM_FUNC_END(chacha_permute) -ENTRY(chacha_block_xor_neon) +SYM_FUNC_START(chacha_block_xor_neon) // x0: Input state matrix, s // x1: 1 data block output, o // x2: 1 data block input, i @@ -143,9 +143,9 @@ ENTRY(chacha_block_xor_neon) ldp x29, x30, [sp], #16 ret -ENDPROC(chacha_block_xor_neon) +SYM_FUNC_END(chacha_block_xor_neon) -ENTRY(hchacha_block_neon) +SYM_FUNC_START(hchacha_block_neon) // x0: Input state matrix, s // x1: output (8 32-bit words) // w2: nrounds @@ -163,7 +163,7 @@ ENTRY(hchacha_block_neon) ldp x29, x30, [sp], #16 ret -ENDPROC(hchacha_block_neon) +SYM_FUNC_END(hchacha_block_neon) a0 .req w12 a1 .req w13 @@ -183,7 +183,7 @@ ENDPROC(hchacha_block_neon) a15 .req w28 .align 6 -ENTRY(chacha_4block_xor_neon) +SYM_FUNC_START(chacha_4block_xor_neon) frame_push 10 // x0: Input state matrix, s @@ -845,7 +845,7 @@ CPU_BE( rev a15, a15 ) eor v31.16b, v31.16b, v3.16b st1 {v28.16b-v31.16b}, [x1] b .Lout -ENDPROC(chacha_4block_xor_neon) +SYM_FUNC_END(chacha_4block_xor_neon) .section ".rodata", "a", %progbits .align L1_CACHE_SHIFT diff --git a/arch/arm64/crypto/crct10dif-ce-core.S b/arch/arm64/crypto/crct10dif-ce-core.S index e545b42e6a46..5a95c2628fbf 100644 --- a/arch/arm64/crypto/crct10dif-ce-core.S +++ b/arch/arm64/crypto/crct10dif-ce-core.S @@ -131,7 +131,7 @@ tbl bd4.16b, {\bd\().16b}, perm4.16b .endm -__pmull_p8_core: +SYM_FUNC_START_LOCAL(__pmull_p8_core) .L__pmull_p8_core: ext t4.8b, ad.8b, ad.8b, #1 // A1 ext t5.8b, ad.8b, ad.8b, #2 // A2 @@ -194,7 +194,7 @@ __pmull_p8_core: eor t4.16b, t4.16b, t5.16b eor t6.16b, t6.16b, t3.16b ret -ENDPROC(__pmull_p8_core) +SYM_FUNC_END(__pmull_p8_core) .macro __pmull_p8, rq, ad, bd, i .ifnc \bd, fold_consts @@ -488,9 +488,9 @@ CPU_LE( ext v7.16b, v7.16b, v7.16b, #8 ) // // Assumes len >= 16. // -ENTRY(crc_t10dif_pmull_p8) +SYM_FUNC_START(crc_t10dif_pmull_p8) crc_t10dif_pmull p8 -ENDPROC(crc_t10dif_pmull_p8) +SYM_FUNC_END(crc_t10dif_pmull_p8) .align 5 // @@ -498,9 +498,9 @@ ENDPROC(crc_t10dif_pmull_p8) // // Assumes len >= 16. // -ENTRY(crc_t10dif_pmull_p64) +SYM_FUNC_START(crc_t10dif_pmull_p64) crc_t10dif_pmull p64 -ENDPROC(crc_t10dif_pmull_p64) +SYM_FUNC_END(crc_t10dif_pmull_p64) .section ".rodata", "a" .align 4 diff --git a/arch/arm64/crypto/ghash-ce-core.S b/arch/arm64/crypto/ghash-ce-core.S index a791c4adf8e6..084c6a30b03a 100644 --- a/arch/arm64/crypto/ghash-ce-core.S +++ b/arch/arm64/crypto/ghash-ce-core.S @@ -350,13 +350,13 @@ CPU_LE( rev64 T1.16b, T1.16b ) * void pmull_ghash_update(int blocks, u64 dg[], const char *src, * struct ghash_key const *k, const char *head) */ -ENTRY(pmull_ghash_update_p64) +SYM_FUNC_START(pmull_ghash_update_p64) __pmull_ghash p64 -ENDPROC(pmull_ghash_update_p64) +SYM_FUNC_END(pmull_ghash_update_p64) -ENTRY(pmull_ghash_update_p8) +SYM_FUNC_START(pmull_ghash_update_p8) __pmull_ghash p8 -ENDPROC(pmull_ghash_update_p8) +SYM_FUNC_END(pmull_ghash_update_p8) KS0 .req v8 KS1 .req v9 diff --git a/arch/arm64/crypto/nh-neon-core.S b/arch/arm64/crypto/nh-neon-core.S index e05570c38de7..51c0a534ef87 100644 --- a/arch/arm64/crypto/nh-neon-core.S +++ b/arch/arm64/crypto/nh-neon-core.S @@ -62,7 +62,7 @@ * * It's guaranteed that message_len % 16 == 0. */ -ENTRY(nh_neon) +SYM_FUNC_START(nh_neon) ld1 {K0.4s,K1.4s}, [KEY], #32 movi PASS0_SUMS.2d, #0 @@ -100,4 +100,4 @@ ENTRY(nh_neon) addp T1.2d, PASS2_SUMS.2d, PASS3_SUMS.2d st1 {T0.16b,T1.16b}, [HASH] ret -ENDPROC(nh_neon) +SYM_FUNC_END(nh_neon) diff --git a/arch/arm64/crypto/sha1-ce-core.S b/arch/arm64/crypto/sha1-ce-core.S index c2ce1f820706..92d0d2753e81 100644 --- a/arch/arm64/crypto/sha1-ce-core.S +++ b/arch/arm64/crypto/sha1-ce-core.S @@ -65,7 +65,7 @@ * void sha1_ce_transform(struct sha1_ce_state *sst, u8 const *src, * int blocks) */ -ENTRY(sha1_ce_transform) +SYM_FUNC_START(sha1_ce_transform) frame_push 3 mov x19, x0 @@ -160,4 +160,4 @@ CPU_LE( rev32 v11.16b, v11.16b ) str dgb, [x19, #16] frame_pop ret -ENDPROC(sha1_ce_transform) +SYM_FUNC_END(sha1_ce_transform) diff --git a/arch/arm64/crypto/sha2-ce-core.S b/arch/arm64/crypto/sha2-ce-core.S index 6f728a419009..3f9d0f326987 100644 --- a/arch/arm64/crypto/sha2-ce-core.S +++ b/arch/arm64/crypto/sha2-ce-core.S @@ -75,7 +75,7 @@ * int blocks) */ .text -ENTRY(sha2_ce_transform) +SYM_FUNC_START(sha2_ce_transform) frame_push 3 mov x19, x0 @@ -166,4 +166,4 @@ CPU_LE( rev32 v19.16b, v19.16b ) 4: st1 {dgav.4s, dgbv.4s}, [x19] frame_pop ret -ENDPROC(sha2_ce_transform) +SYM_FUNC_END(sha2_ce_transform) diff --git a/arch/arm64/crypto/sha3-ce-core.S b/arch/arm64/crypto/sha3-ce-core.S index a7d587fa54f6..1cfb768df350 100644 --- a/arch/arm64/crypto/sha3-ce-core.S +++ b/arch/arm64/crypto/sha3-ce-core.S @@ -40,7 +40,7 @@ * sha3_ce_transform(u64 *st, const u8 *data, int blocks, int dg_size) */ .text -ENTRY(sha3_ce_transform) +SYM_FUNC_START(sha3_ce_transform) frame_push 4 mov x19, x0 @@ -218,7 +218,7 @@ ENTRY(sha3_ce_transform) st1 {v24.1d}, [x19] frame_pop ret -ENDPROC(sha3_ce_transform) +SYM_FUNC_END(sha3_ce_transform) .section ".rodata", "a" .align 8 diff --git a/arch/arm64/crypto/sha512-ce-core.S b/arch/arm64/crypto/sha512-ce-core.S index ce65e3abe4f2..cde606c0323e 100644 --- a/arch/arm64/crypto/sha512-ce-core.S +++ b/arch/arm64/crypto/sha512-ce-core.S @@ -106,7 +106,7 @@ * int blocks) */ .text -ENTRY(sha512_ce_transform) +SYM_FUNC_START(sha512_ce_transform) frame_push 3 mov x19, x0 @@ -216,4 +216,4 @@ CPU_LE( rev64 v19.16b, v19.16b ) 3: st1 {v8.2d-v11.2d}, [x19] frame_pop ret -ENDPROC(sha512_ce_transform) +SYM_FUNC_END(sha512_ce_transform) diff --git a/arch/arm64/crypto/sm3-ce-core.S b/arch/arm64/crypto/sm3-ce-core.S index d50d187906cb..ef97d3187cb7 100644 --- a/arch/arm64/crypto/sm3-ce-core.S +++ b/arch/arm64/crypto/sm3-ce-core.S @@ -73,7 +73,7 @@ * int blocks) */ .text -ENTRY(sm3_ce_transform) +SYM_FUNC_START(sm3_ce_transform) /* load state */ ld1 {v8.4s-v9.4s}, [x0] rev64 v8.4s, v8.4s @@ -131,7 +131,7 @@ CPU_LE( rev32 v3.16b, v3.16b ) ext v9.16b, v9.16b, v9.16b, #8 st1 {v8.4s-v9.4s}, [x0] ret -ENDPROC(sm3_ce_transform) +SYM_FUNC_END(sm3_ce_transform) .section ".rodata", "a" .align 3 diff --git a/arch/arm64/crypto/sm4-ce-core.S b/arch/arm64/crypto/sm4-ce-core.S index af3bfbc3f4d4..4ac6cfbc5797 100644 --- a/arch/arm64/crypto/sm4-ce-core.S +++ b/arch/arm64/crypto/sm4-ce-core.S @@ -15,7 +15,7 @@ * void sm4_ce_do_crypt(const u32 *rk, u32 *out, const u32 *in); */ .text -ENTRY(sm4_ce_do_crypt) +SYM_FUNC_START(sm4_ce_do_crypt) ld1 {v8.4s}, [x2] ld1 {v0.4s-v3.4s}, [x0], #64 CPU_LE( rev32 v8.16b, v8.16b ) @@ -33,4 +33,4 @@ CPU_LE( rev32 v8.16b, v8.16b ) CPU_LE( rev32 v8.16b, v8.16b ) st1 {v8.4s}, [x1] ret -ENDPROC(sm4_ce_do_crypt) +SYM_FUNC_END(sm4_ce_do_crypt)
In an effort to clarify and simplify the annotation of assembly functions in the kernel new macros have been introduced. These replace ENTRY and ENDPROC and also add a new annotation for static functions which previously had no ENTRY equivalent. Update the annotations in the crypto code to the new macros. There are a small number of files imported from OpenSSL where the assembly is generated using perl programs, these are not currently annotated at all and have not been modified. Signed-off-by: Mark Brown <broonie@kernel.org> --- I'm intending to do this for all the rest of the asm too, this is the simplest directory and there's no direct interdependencies so starting here. arch/arm64/crypto/aes-ce-ccm-core.S | 16 +++++------ arch/arm64/crypto/aes-ce-core.S | 16 +++++------ arch/arm64/crypto/aes-ce.S | 4 +-- arch/arm64/crypto/aes-cipher-core.S | 8 +++--- arch/arm64/crypto/aes-modes.S | 16 +++++------ arch/arm64/crypto/aes-neon.S | 4 +-- arch/arm64/crypto/aes-neonbs-core.S | 40 +++++++++++++-------------- arch/arm64/crypto/chacha-neon-core.S | 16 +++++------ arch/arm64/crypto/crct10dif-ce-core.S | 12 ++++---- arch/arm64/crypto/ghash-ce-core.S | 8 +++--- arch/arm64/crypto/nh-neon-core.S | 4 +-- arch/arm64/crypto/sha1-ce-core.S | 4 +-- arch/arm64/crypto/sha2-ce-core.S | 4 +-- arch/arm64/crypto/sha3-ce-core.S | 4 +-- arch/arm64/crypto/sha512-ce-core.S | 4 +-- arch/arm64/crypto/sm3-ce-core.S | 4 +-- arch/arm64/crypto/sm4-ce-core.S | 4 +-- 17 files changed, 84 insertions(+), 84 deletions(-)