Commit Graph

98 Commits

Author SHA1 Message Date
gingerBill
a58e4d0359 Allow for foo() or_else unreachable() and other diverging procedures 2022-08-05 12:19:57 +01:00
gingerBill
576914aee1 Make unreachable() a built-in compiler-level procedure 2022-08-05 11:57:33 +01:00
gingerBill
d492fb3501 Fix and improve x->y() behaviour to minimize duplicate evaluation 2022-07-24 12:39:59 +01:00
gingerBill
6c7e5748a8 Integrate numerous debug fixes from #1877 2022-07-18 12:49:29 +01:00
gingerBill
041625381c Fix #1888 2022-07-16 17:36:03 +01:00
gingerBill
516f6647b4 Fix intrinsics.non_temporal_{load, store} 2022-05-31 11:00:41 +01:00
gingerBill
a0babefe55 Fix lb_build_builtin_simd_proc 2022-05-30 15:13:45 +01:00
gingerBill
f3aefbc443 @(require_target_feature=<string>) @(enable_target_feature=<string>)
require_target_feature - required by the target micro-architecture
enable_target_feature - will be enabled for the specified procedure only
2022-05-30 14:53:12 +01:00
gingerBill
cef022539e Rename to lanes_rotate_left, lanes_rotate_right, lanes_reverse 2022-05-29 15:13:14 +01:00
gingerBill
d7eaf0f87b Add intrinsics.x86_cpuid and intrinsics.x86_xgetbv 2022-05-28 15:41:11 +01:00
gingerBill
8518d3b232 Rename to non_temporaral_* 2022-05-27 22:57:16 +01:00
gingerBill
609ddf28b7 Add intrinsics nontemporal_store and nontemporal_load 2022-05-27 14:56:36 +01:00
gingerBill
833f9dd037 Minor change 2022-05-27 11:55:03 +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
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
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
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
7002c94a63 Add intrinsics.simd_select 2022-05-25 23:34:41 +01:00
gingerBill
140c00aa0c intrinsics.simd_shuffle 2022-05-25 23:01:33 +01:00
gingerBill
10e4de3c01 Add intrinsics.simd_reduce_* 2022-05-25 22:04:47 +01:00
gingerBill
b168bf9460 Rename simd_insert to simd_replace 2022-05-25 21:00:00 +01:00
gingerBill
4c4480104d Add simd_extract and simd_insert 2022-05-25 20:27:14 +01:00
gingerBill
81dd727f75 Implement backend for simd intrinsics 2022-05-25 18:49:17 +01:00
gingerBill
184d1c57b1 Change atomic.wait32 and atomic.notify selection 2022-05-21 13:37:00 +01:00
gingerBill
e48f41165c Begin work on Atomics for wasm32 (wait and notify intrinsics) 2022-05-21 12:58:48 +01:00
Tobias Mollstam
846930a07f emit optnone and noinline for all procs when opt set to minimal 2022-05-18 07:07:20 +02:00
gingerBill
8023c8abc7 Fix @(disable=...) 2022-05-02 14:10:02 +01:00
gingerBill
18ad6c33ef Implement syscall for arm32 2022-05-01 23:32:31 +01:00
gingerBill
a232c0888c intrinsics.atomic_type_is_lock_free 2022-04-02 14:38:42 +01:00
gingerBill
6636376a81 Correct weak handling 2022-03-31 00:58:01 +01:00
gingerBill
203382461b Replace the atomic intrinsics
Matching C11 in style
2022-03-31 00:14:49 +01:00
gingerBill
72ae061769 Add intrinsics.wasm_memory_grow intrinsics.wasm_memory_size 2022-03-30 17:29:37 +01:00
gingerBill
3a4630e6b4 Correct atomic_cxchg_* atomic_cxchgweak_* intrinsics behaviour to monotonic on failure for acq, rel, and acqrel 2022-03-30 16:15:23 +01:00
gingerBill
a7adb2fb6e Merge branch 'master' into freestanding_amd64 2022-03-14 11:02:59 +00:00
gingerBill
f907516cbd #Fix 1615 Replace llvm.readcyclecounter with cntvct_el0 on arm64 2022-03-12 10:48:31 +00:00
Joakim Hentula
a5dde78f08 Add relative slice to type checks for built in len 2022-03-02 16:44:33 +00:00
gingerBill
196bd735d4 Replace local @(no_red_zone) with global -disable-red-zone 2022-02-23 11:29:36 +00:00
gingerBill
493bc653b5 Add @(no_red_zone) for procedures 2022-02-23 11:23:27 +00:00
gingerBill
ba61d911da Remove dead code 2022-02-20 13:26:27 +00:00
gingerBill
ffc45e8cc2 Add intrinsics.constant_utf16_cstring 2022-02-17 20:48:37 +00:00
gingerBill
db6bd9b358 Allow sysv and win64 calling conventions to be used on any platform on amd64 2022-02-16 16:03:49 +00:00