• Fangming.Fang's avatar
    crypto/aes: optimize arm64 AES implementation · 917e7269
    Fangming.Fang authored
    This patch makes use of arm64 AES instructions to accelerate AES computation
    and only supports optimization on Linux for arm64
    
    name        old time/op    new time/op     delta
    Encrypt-32     255ns ± 0%       26ns ± 0%   -89.73%
    Decrypt-32     256ns ± 0%       26ns ± 0%   -89.77%
    Expand-32      990ns ± 5%      901ns ± 0%    -9.05%
    
    name        old speed      new speed       delta
    Encrypt-32  62.5MB/s ± 0%  610.4MB/s ± 0%  +876.39%
    Decrypt-32  62.3MB/s ± 0%  610.2MB/s ± 0%  +879.6%
    
    Fixes #18498
    
    Change-Id: If416e5a151785325527b32ff72f6da3812493ed0
    Reviewed-on: https://go-review.googlesource.com/64490
    Run-TryBot: Cherry Zhang <cherryyz@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
    917e7269
asm_arm64.s 2.39 KB