aboutsummaryrefslogtreecommitdiff
path: root/core/simd
diff options
context:
space:
mode:
authorYawning Angel <yawning@schwanenlied.me>2024-06-05 04:53:08 +0900
committerYawning Angel <yawning@schwanenlied.me>2024-07-16 01:29:43 +0900
commit69026852ce9c79210ee4c8719a492facafe207df (patch)
treef4e8e819554e806352a9d61fd04ee082cac251d7 /core/simd
parentf578994fa634a615a6800703e18dfbf931958388 (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.odin4
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 ---
}