esp-idf/components/mbedtls/port/aes
Richard Allen 0b51c24238 change(mbedtls/port): optimize gcm_mult()
1) pre-shift GCM last4 to use 32-bit shift

On 32-bit architectures like Aarch32, RV32, Xtensa,
shifting a 64-bit variable by 32-bits is free,
since it changes the register representing half of the 64-bit var.
Pre-shift the last4 array to take advantage of this.

2) unroll first GCM iteration

The first loop of gcm_mult() is different from
the others. By unrolling it separately from the
others, the other iterations may take advantage
of the zero-overhead loop construct, in addition
to saving a conditional branch in the loop.
2024-08-20 16:44:56 +08:00
..
block feat(hal/aes): use RCC atomic block to enable/reset the AES peripheral 2024-03-13 15:22:07 +05:30
dma fix(mbedtls/aes): Avoid extra C2M sync of memory 2024-08-08 09:12:31 +05:30
include change(mbedtls/aes): Move aad desc population into the internal AES-GCM DMA process API 2024-03-26 11:31:11 +05:30
esp_aes_common.c change(mbedtls/aes): moved esp_aes_internal.h to be a private header 2024-03-13 15:22:06 +05:30
esp_aes_gcm.c change(mbedtls/port): optimize gcm_mult() 2024-08-20 16:44:56 +08:00
esp_aes_xts.c docs: update the algorithm and key name from AES-XTS to XTS-AES 2023-05-15 17:54:50 +08:00