aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2022-05-27 12:20:48 +0100
committergingerBill <bill@gingerbill.org>2022-05-27 12:20:48 +0100
commit952f294bcef26e47d4a9e0f3ab2a1bc6f159c8b4 (patch)
tree98157d9c99ece4988162f1fd8c5f2edc0f28070e
parentc23274adb040ef1ffbdfd8dc1689bb320f274005 (diff)
Add loads of aliases of vector types
-rw-r--r--core/simd/simd.odin71
1 files changed, 53 insertions, 18 deletions
diff --git a/core/simd/simd.odin b/core/simd/simd.odin
index 43b3b3ee2..ed7e418f3 100644
--- a/core/simd/simd.odin
+++ b/core/simd/simd.odin
@@ -3,24 +3,59 @@ package simd
import "core:builtin"
import "core:intrinsics"
-// boolx16 :: #simd[16]bool
-// b8x16 :: #simd[16]b8
-// b16x8 :: #simd[8]b16
-// b32x4 :: #simd[4]b32
-// b64x2 :: #simd[2]b64
-
-// u8x16 :: #simd[16]u8
-// i8x16 :: #simd[16]i8
-// u16x8 :: #simd[8]u16
-// i16x8 :: #simd[8]i16
-// u32x4 :: #simd[4]u32
-// i32x4 :: #simd[4]i32
-// u64x2 :: #simd[2]u64
-// i64x2 :: #simd[2]i64
-
-// f16x8 :: #simd[8]f16
-// f32x4 :: #simd[4]f32
-// f64x2 :: #simd[2]f64
+// 128-bit vector aliases
+u8x16 :: #simd[16]u8
+i8x16 :: #simd[16]i8
+u16x8 :: #simd[8]u16
+i16x8 :: #simd[8]i16
+u32x4 :: #simd[4]u32
+i32x4 :: #simd[4]i32
+u64x2 :: #simd[2]u64
+i64x2 :: #simd[2]i64
+f32x4 :: #simd[4]f32
+f64x2 :: #simd[2]f64
+
+boolx16 :: #simd[16]bool
+b8x16 :: #simd[16]b8
+b16x8 :: #simd[8]b16
+b32x4 :: #simd[4]b32
+b64x2 :: #simd[2]b64
+
+// 256-bit vector aliases
+u8x32 :: #simd[32]u8
+i8x32 :: #simd[32]i8
+u16x16 :: #simd[16]u16
+i16x16 :: #simd[16]i16
+u32x8 :: #simd[8]u32
+i32x8 :: #simd[8]i32
+u64x4 :: #simd[4]u64
+i64x4 :: #simd[4]i64
+f32x8 :: #simd[8]f32
+f64x4 :: #simd[4]f64
+
+boolx32 :: #simd[32]bool
+b8x32 :: #simd[32]b8
+b16x16 :: #simd[16]b16
+b32x8 :: #simd[8]b32
+b64x4 :: #simd[4]b64
+
+// 512-bit vector aliases
+u8x64 :: #simd[64]u8
+i8x64 :: #simd[64]i8
+u16x32 :: #simd[32]u16
+i16x32 :: #simd[32]i16
+u32x16 :: #simd[16]u32
+i32x16 :: #simd[16]i32
+u64x8 :: #simd[8]u64
+i64x8 :: #simd[8]i64
+f32x16 :: #simd[16]f32
+f64x8 :: #simd[8]f64
+
+boolx64 :: #simd[64]bool
+b8x64 :: #simd[64]b8
+b16x32 :: #simd[32]b16
+b32x16 :: #simd[16]b32
+b64x8 :: #simd[8]b64
add :: intrinsics.simd_add