• Tianjia Zhang's avatar
    crypto: arm64/sm4 - refactor and simplify CE implementation · ce41fefd
    Tianjia Zhang authored
    This patch does not add new features, but only refactors and simplifies the
    implementation of the Crypto Extension acceleration of the SM4 algorithm:
    
    Extract the macro optimized by SM4 Crypto Extension for reuse in the
    subsequent optimization of CCM/GCM modes.
    
    Encryption in CBC and CFB modes processes four blocks at a time instead of
    one, allowing the ld1 instruction to load 64 bytes of data at a time, which
    will reduces unnecessary memory accesses.
    
    CBC/CFB/CTR makes full use of free registers to reduce redundant memory
    accesses, and rearranges some instructions to improve out-of-order execution
    capabilities.
    Signed-off-by: default avatarTianjia Zhang <tianjia.zhang@linux.alibaba.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    ce41fefd
sm4-ce-glue.c 8.84 KB