Commit Graph

6520 Commits

Author SHA1 Message Date
gingerBill
babfba5e8f Add rdtsc.odin 2022-05-29 13:48:20 +01:00
gingerBill
846f8377b2 Add fxsr.odin 2022-05-29 13:44:00 +01:00
gingerBill
77d4409549 Add adx.odin 2022-05-29 13:40:16 +01:00
gingerBill
7f3540b7f5 Add abm.odin 2022-05-29 13:36:55 +01:00
gingerBill
3ad2cde833 Add amd64 specific instructions 2022-05-29 13:34:59 +01:00
gingerBill
910799cc5f Add cpu_features for core:simd/x86 2022-05-28 15:54:41 +01:00
gingerBill
c60d7842cd Remove old code 2022-05-28 15:41:27 +01:00
gingerBill
d7eaf0f87b Add intrinsics.x86_cpuid and intrinsics.x86_xgetbv 2022-05-28 15:41:11 +01:00
gingerBill
618d3bf62f Improve vector comparison == != for horizontal reduction 2022-05-28 13:42:58 +01:00
gingerBill
4db533ff71 Add ssse3 support 2022-05-27 23:07:33 +01:00
gingerBill
026540040d Add SSE3 support 2022-05-27 23:00:52 +01:00
gingerBill
8518d3b232 Rename to non_temporaral_* 2022-05-27 22:57:16 +01:00
gingerBill
1c1f5e2231 Complete SSE2 2022-05-27 22:56:11 +01:00
gingerBill
5c10b35df7 Fix sqrt for simd 2022-05-27 22:26:04 +01:00
gingerBill
20c5033b38 Add pack and unpack 2022-05-27 17:07:48 +01:00
gingerBill
20fe6d102a Add load and stores and sets 2022-05-27 16:58:35 +01:00
gingerBill
4e30a64d9f Add more sse2 intrinsics 2022-05-27 16:49:52 +01:00
gingerBill
c48ef7d70b Add shifts 2022-05-27 16:39:54 +01:00
gingerBill
e079a7009d Begin work on sse2.odin 2022-05-27 16:09:31 +01:00
gingerBill
f383bf3136 Add _mm_stream_ps 2022-05-27 14:59:09 +01:00
gingerBill
609ddf28b7 Add intrinsics nontemporal_store and nontemporal_load 2022-05-27 14:56:36 +01:00
gingerBill
2185dada56 Change package name 2022-05-27 14:26:02 +01:00
gingerBill
0b08080119 Add core:simd/x86 SSE
Proof of Concept to show intrinsics specific to a certain target platform
2022-05-27 14:23:31 +01:00
gingerBill
432b2b19e9 Add intrinsics.simd_x86__MM_SHUFFLE 2022-05-27 12:54:28 +01:00
gingerBill
952f294bce Add loads of aliases of vector types 2022-05-27 12:20:48 +01:00
gingerBill
c23274adb0 Remove useless check 2022-05-27 12:11:58 +01:00
gingerBill
833f9dd037 Minor change 2022-05-27 11:55:03 +01:00
gingerBill
1ff8b97dae Add prefix of lanes_ 2022-05-26 20:44:37 +01:00
gingerBill
70451f9335 Support reverse_bits for #simd 2022-05-26 20:40:48 +01:00
gingerBill
1f438d4e6c Merge intrinsics.simd_sqrt with intrinsics.sqrt 2022-05-26 18:09:59 +01:00
gingerBill
421d45a7a7 Add intrinsics.fused_mul_add 2022-05-26 18:06:26 +01:00
gingerBill
20e7b5c88a Support count_ones etc with #simd 2022-05-26 17:48:51 +01:00
gingerBill
7092273a8f Rename simd_eq etc to simd_lanes_eq 2022-05-26 17:36:13 +01:00
gingerBill
d0e8a735ba Add arithmetic operator support for simd vectors; Add intrinsics.simd_and_not 2022-05-26 17:09:46 +01:00
gingerBill
208226dba2 Improve #simd literal support 2022-05-26 14:55:10 +01:00
gingerBill
f308f37ba1 Remove need for simd.splat 2022-05-26 14:51:50 +01:00
gingerBill
c2610cb75e Keep -vet happy 2022-05-26 13:56:35 +01:00
gingerBill
59e9df2609 simd.bit_not; simd.copysign 2022-05-26 13:49:27 +01:00
gingerBill
66b5a35ec3 Add simd_to_bits; correct fix typo causing issue with parapoly 2022-05-26 13:45:47 +01:00
gingerBill
f3f6c12a7c Add simd_clamp 2022-05-26 11:58:55 +01:00
gingerBill
e331b0647e Add simd_rotate_left simd_rotate_right` 2022-05-26 11:48:04 +01:00
gingerBill
35502816c7 Add simd_add_sat simd_sub_sat 2022-05-26 11:24:10 +01:00
gingerBill
7ec0236fbf Add simd_reverse 2022-05-26 11:14:22 +01:00
gingerBill
0fd43c1a0b Add simd.{sqrt, ceil, floor, trunc, nearest} 2022-05-26 11:02:02 +01:00
gingerBill
06337129d8 Remove intrinsics.odin.simd_vector in favour of #simd[N]T 2022-05-26 10:38:51 +01:00
gingerBill
b95ca80f85 Fix simd_shuffle 2022-05-26 00:39:34 +01:00
gingerBill
83d880a94a Remove unneeded mask 2022-05-26 00:37:48 +01:00
gingerBill
cde6a2f7a5 Make simd_shuffle act closer to swizzle 2022-05-26 00:36:24 +01:00
gingerBill
c2f5cbdeb4 Allow integer vectors in select 2022-05-25 23:49:23 +01:00
gingerBill
8e57511ffa Minor clean up 2022-05-25 23:42:25 +01:00