Commit Graph

166 Commits

Author SHA1 Message Date
gingerBill
c819c350d6 Add error message for atomic intrinsics to prevent arbitrary types 2023-01-16 11:58:14 +00:00
gingerBill
b470ceb470 Correct mpsc_dequeue 2023-01-12 12:59:09 +00:00
gingerBill
520ff731de Add ArenaTemp to the compiler 2023-01-12 00:47:20 +00:00
gingerBill
d4e18109da Move walking of dependencies for procedures to just before calculating the min dep set 2023-01-04 13:52:38 +00:00
gingerBill
855ebceadc Minimize add_type_info_type usage 2023-01-03 17:26:05 +00:00
gingerBill
69934c3b0b More for_array(i, y) to for (x : y) translations 2023-01-03 13:04:09 +00:00
gingerBill
252be0fb41 Make all maps use heap allocator implicitly 2023-01-03 11:59:52 +00:00
gingerBill
600f2b7284 Use heap_allocator for all hash set types 2023-01-03 11:53:59 +00:00
gingerBill
00823ca88c Remove a few TODOs 2022-12-22 13:03:34 +00:00
gingerBill
8fc9566a83 Use *_set_update where possible 2022-12-20 14:19:55 +00:00
gingerBill
690666537c Add gb_internal to checker 2022-12-18 21:46:27 +00:00
gingerBill
34a048f7da Replace compiler for loops for the hash-table types to simplify code usage 2022-12-09 11:29:28 +00:00
gingerBill
7cfbd87f57 Merge branch 'master' into map-dev 2022-11-11 15:56:14 +00:00
gingerBill
e9e05a3783 Fix typo 2022-11-11 15:55:55 +00:00
gingerBill
2b83f27f06 Merge branch 'master' into map-dev 2022-11-11 15:54:33 +00:00
gingerBill
3d0e194298 Check for non-zero sized elements for intrinsics.ptr_sub 2022-11-11 15:54:13 +00:00
gingerBill
a74093784c Add intrinsics.map_cell_info and intrinsics.map_info 2022-11-08 12:24:00 +00:00
gingerBill
ed58374964 Make Map_Info store pointers to cell info rather than inline 2022-11-08 12:18:36 +00:00
gingerBill
6a14c3edb4 Make raw_data an intrinsic rather a @(builtin) runtime procedure 2022-10-30 22:05:29 +00:00
Jeroen van Rijn
92fb65cf2e Fix #defined(I). 2022-10-23 04:32:45 +02:00
gingerBill
35e70f4be1 Add node data for union when using intrinsics.type_convert_variants_to_pointers 2022-09-27 22:30:00 +01:00
gingerBill
6c8aad0afb Make intrinsics.{count_ones, count_zeros, count_trailing_zeros, count_leading_zeros} work at compile time 2022-09-22 15:17:36 +01:00
gingerBill
b426e8577b cap(Enum) (equivalent to max(Enum)-min(Enum)+1) 2022-09-22 01:09:18 +01:00
gingerBill
1bc0e66ed1 Improve error message for using offset_of within a struct itself of that struct 2022-09-17 10:36:49 +01:00
gingerBill
f77709e67e Add intrinsics.type_convert_variants_to_pointers and reflect.get_union_as_ptr_variants 2022-09-08 16:52:51 +01:00
gingerBill
4bdd2ff93c Make valgrind calls a no-op on non-supported platforms rather than print an error 2022-09-06 12:57:22 +01:00
gingerBill
b82b91ea08 Fix #1974 by erring on untyped parameters to intrinsics.objc_send 2022-09-01 15:15:51 +01:00
gingerBill
2908923db9 Fix #1972 2022-08-24 12:18:42 +01:00
gingerBill
82e840a0ca EXPERIMENTAL intrinsics.valgrind_client_request 2022-08-17 13:52:13 +01:00
gingerBill
cecadce86d Allow for chaining of '#load(path) or_else #load(path)' 2022-08-11 14:42:29 +01:00
gingerBill
a7c3906003 #load(path, type)
where `type` can be `string` or `[]T` where `T` is a simple type
2022-08-11 14:30:14 +01:00
gingerBill
70dc0c15fd Improve type hint for #load to allow for string types 2022-08-11 13:43:35 +01:00
gingerBill
9eeed9d5bd Simplify #load_or for the time being 2022-08-11 13:35:24 +01:00
gingerBill
a054c2934e Cache #load data and hashes 2022-08-11 13:32:45 +01:00
gingerBill
38102f14c1 Add #load(path) or_else default in favour of #load_or(path, default) 2022-08-11 13:01:54 +01:00
gingerBill
0997df4fcf Move builtin directives to a separate procedure 2022-08-11 12:39:05 +01:00
gingerBill
576914aee1 Make unreachable() a built-in compiler-level procedure 2022-08-05 11:57:33 +01:00
gingerBill
bb7f291f5f Remove simd_rem; Disallow simd_div for integers 2022-06-02 12:10:43 +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
5c10b35df7 Fix sqrt for simd 2022-05-27 22:26:04 +01:00
gingerBill
609ddf28b7 Add intrinsics nontemporal_store and nontemporal_load 2022-05-27 14:56:36 +01:00
gingerBill
432b2b19e9 Add intrinsics.simd_x86__MM_SHUFFLE 2022-05-27 12:54:28 +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