From 848aa0a9393f52d735aa9acb0cc165e47f8f740c Mon Sep 17 00:00:00 2001 From: Siddarth Kumar Date: Mon, 16 Sep 2024 08:49:44 +0530 Subject: [PATCH] chore: explicitly set targets for compilation The following functions need to target both as aes and crypto : - aesce_encrypt_block - aesce_decrypt_block - aes_sub_word - mbedtls_aesce_inverse_key --- aesce.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/aesce.c b/aesce.c index 0d72e2b..95297ec 100644 --- a/aesce.c +++ b/aesce.c @@ -101,6 +101,7 @@ int mbedtls_aesce_has_support(void) #endif } +__attribute__((target("aes,crypto"))) static uint8x16_t aesce_encrypt_block(uint8x16_t block, unsigned char *keys, int rounds) @@ -125,6 +126,7 @@ static uint8x16_t aesce_encrypt_block(uint8x16_t block, return block; } +__attribute__((target("aes,crypto"))) static uint8x16_t aesce_decrypt_block(uint8x16_t block, unsigned char *keys, int rounds) @@ -182,10 +184,12 @@ int mbedtls_aesce_crypt_ecb(mbedtls_aes_context *ctx, /* * Compute decryption round keys from encryption round keys */ +__attribute__((target("aes,crypto"))) void mbedtls_aesce_inverse_key(unsigned char *invkey, const unsigned char *fwdkey, int nr) { + int i, j; j = nr; vst1q_u8(invkey, vld1q_u8(fwdkey + j * 16)); @@ -202,6 +206,7 @@ static inline uint32_t aes_rot_word(uint32_t word) return (word << (32 - 8)) | (word >> 8); } +__attribute__((target("aes,crypto"))) static inline uint32_t aes_sub_word(uint32_t in) { uint8x16_t v = vreinterpretq_u8_u32(vdupq_n_u32(in));