diff options
| author | Yawning Angel <yawning@schwanenlied.me> | 2024-06-05 04:53:08 +0900 |
|---|---|---|
| committer | Yawning Angel <yawning@schwanenlied.me> | 2024-07-16 01:29:43 +0900 |
| commit | 69026852ce9c79210ee4c8719a492facafe207df (patch) | |
| tree | f4e8e819554e806352a9d61fd04ee082cac251d7 /core/simd | |
| parent | f578994fa634a615a6800703e18dfbf931958388 (diff) | |
core/crypto/aes: Add Intel AES-NI support
This supports AES-NI + PCLMUL, and provides optimized key schedule, ECB,
CTR, and GCM. Other modes are trivial to add later if required.
Diffstat (limited to 'core/simd')
| -rw-r--r-- | core/simd/x86/aes.odin | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/core/simd/x86/aes.odin b/core/simd/x86/aes.odin index 66a1f744c..a2cd2e4d3 100644 --- a/core/simd/x86/aes.odin +++ b/core/simd/x86/aes.odin @@ -28,7 +28,7 @@ _mm_aesimc_si128 :: #force_inline proc "c" (a: __m128i) -> __m128i { @(require_results, enable_target_feature = "aes") _mm_aeskeygenassist_si128 :: #force_inline proc "c" (a: __m128i, $IMM8: u8) -> __m128i { - return aeskeygenassist(a, u8(IMM8)) + return aeskeygenassist(a, IMM8) } @@ -45,5 +45,5 @@ foreign _ { @(link_name = "llvm.x86.aesni.aesimc") aesimc :: proc(a: __m128i) -> __m128i --- @(link_name = "llvm.x86.aesni.aeskeygenassist") - aeskeygenassist :: proc(a: __m128i, imm8: u8) -> __m128i --- + aeskeygenassist :: proc(a: __m128i, #const imm8: u8) -> __m128i --- } |