Commit Graph

419 Commits

Author SHA1 Message Date
dzaima
c078f62b1f add GLOBAL, INIT_GLOBAL, or const to globals 2024-02-01 21:13:39 +02:00
dzaima
17c575edba trivial fast path for >depth1arr 2023-12-16 01:45:29 +02:00
dzaima
b9b90fbe8f improve error messages of o2i/o2i64/o2u64 & usum 2023-12-05 17:19:36 +02:00
dzaima
9984d720c9 move bit_sum to fold.c 2023-12-05 16:41:38 +02:00
dzaima
baa23cb527 add a trailing newline to double-fatal message
apparently 'puts' has a trailing newline but 'fputs' doesn't
2023-12-04 11:35:34 +02:00
dzaima
fcc939dbed debug flag for running a GC every n'th allocation 2023-12-03 23:34:49 +02:00
dzaima
789064140b use isStr more, include builtin name in bad path messages 2023-11-26 15:37:41 +02:00
dzaima
7357820f19 start of compiler state refactoring 2023-11-25 23:21:32 +02:00
dzaima
5458739cf2 don't have a ⌾ character in m_c8vec_0
name shouldn't ever be visible either, so shortening it while at it
2023-11-24 22:21:23 +02:00
dzaima
d1f66dc75b check created bitarr size for overflow 2023-11-18 19:56:39 +02:00
dzaima
f037754880 more specific empty array types 2023-11-13 23:16:02 +02:00
dzaima
ad574d2269 refactor & document #define-s, always-available ')gc log' and ')mem log' 2023-10-31 03:16:48 +02:00
dzaima
f6a9c30889 •internal.HeapStats 2023-09-18 23:38:06 +03:00
dzaima
5efd90cc91 rename elWidthLogBits to something less long & add byte variant 2023-09-12 19:58:56 +03:00
dzaima
81a291f860 round up some pointers 2023-08-25 03:47:05 +03:00
dzaima
f0d6a65240 move unaligned load/store helpers to stuff.h
also replace a NULL with "" to make iBuf+0 not be UB
2023-08-25 03:24:42 +03:00
dzaima
d1e511bebd add padding before allocations & document it 2023-07-13 16:20:37 +03:00
dzaima
9cfc3f3f25 various changes on filling arrays with the same element 2023-07-12 16:23:03 +03:00
dzaima
934a2b5ae3 rearrange things 2023-06-06 21:44:50 +03:00
dzaima
20a946d085 dynamically switch fork functions 2023-05-22 00:32:44 +03:00
dzaima
d930e7f975 add nogc message to thrF 2023-05-19 17:32:14 +03:00
dzaima
53bacf00c8 native F⟜k⁼𝕩 & k⊸F⁼𝕩 2023-05-11 15:28:40 +03:00
dzaima
08b6ff77c4 c1G & c2G 2023-05-11 15:28:40 +03:00
dzaima
d1a5ed3e00 err → fatal 2023-05-11 15:28:23 +03:00
dzaima
aa68ed0730 define single ICMP 2023-05-11 15:28:23 +03:00
dzaima
fe39fe1932 remove Md1H/MD2R 2023-05-11 15:28:23 +03:00
dzaima
0598ce8357 use getFillQ less 2023-05-09 00:14:14 +03:00
dzaima
1bd9467a2d cleanup 2023-05-04 12:27:13 +03:00
dzaima
35786d4f5b m_hVec\d → m_hvec\d 2023-04-29 17:39:13 +03:00
dzaima
a0d384060a unify implementations of m_vec1 and m_unit 2023-04-29 17:39:13 +03:00
dzaima
3b580cbd0c rename unit creation methods 2023-04-29 17:39:13 +03:00
dzaima
56e4863f66 typedef c8/c16/c32 2023-04-29 17:39:13 +03:00
dzaima
865257fdb6 more header file cleanup 2023-04-29 17:39:13 +03:00
dzaima
aa5ed7cc7a BB2B & BBB2B → FC1 & FC2 2023-04-29 15:31:31 +03:00
dzaima
229a32237a slice checking macro refactor 2023-04-29 13:24:20 +03:00
dzaima
7f0390be3f more error messages 2023-04-28 20:49:34 +03:00
dzaima
7dd677a4e2 various fill improvements 2023-04-28 20:31:44 +03:00
dzaima
5aa896ab38 use APD for Arith⌜ 2023-04-28 19:30:54 +03:00
dzaima
5c64c32aa9 allow GC between APD calls, delay shape errors 2023-04-28 18:54:52 +03:00
dzaima
7b877d368f move fill handling to APD 2023-04-28 18:54:52 +03:00
dzaima
2f46b80b82 yet another mutable temporary array thing 2023-04-28 18:54:52 +03:00
dzaima
880efa38b4 better fill equality checking utilities 2023-04-28 18:51:41 +03:00
dzaima
d0e76ec436 better selfElType 2023-04-28 16:22:13 +03:00
dzaima
586aeaea2d HARR_FP 2023-04-25 21:44:55 +03:00
dzaima
927814d182 fix ⊢¨ {a←𝕩 ⋄ ⥊𝕩} 2‿3⥊<"a" 2023-04-23 22:17:32 +03:00
dzaima
1ffc141919 move toCells & toKCells to cells.c 2023-04-22 18:31:24 +03:00
dzaima
3e9f1ce1b0 arr_shErase 2023-04-22 16:33:55 +03:00
dzaima
20b3867581 change %c in format strings to u32 unicode codepoint 2023-04-22 10:58:25 +03:00
dzaima
a7ceda6b28 fix float NaN comparison 2023-04-21 17:55:38 +03:00
dzaima
9bb7fa406b add assertion for arr_shReplace rank expectation 2023-04-21 15:50:42 +03:00
dzaima
f001841d17 move comparison functions to separate file 2023-04-14 18:11:49 +03:00
dzaima
3623fbd5ba equality check cleanup 2023-04-14 18:09:38 +03:00
dzaima
94bcc4bcc1 make debugger helpers print to stderr 2023-04-14 14:58:11 +03:00
dzaima
0aca470931 more explicit inline requiring 2023-04-06 13:12:11 +03:00
dzaima
5a2b755191 move non-AVX2 x86-64 into SINGELI_SIMD 2023-04-02 15:55:49 +03:00
dzaima
c76adb8b35 default to •internal.EEqual comparing 0 and ¯0 as equal 2023-04-02 15:29:11 +03:00
dzaima
a62c21733e SSE2 equal.singeli 2023-04-01 22:08:47 +03:00
dzaima
dc2ac37e0a arch-independent Singeli builds 2023-03-31 16:45:29 +03:00
dzaima
1f2456042c clean up calls.h includes 2023-03-26 15:54:27 +03:00
dzaima
1f70c08aa2 fillarr NOGC 2023-03-26 15:43:59 +03:00
dzaima
709c1896d3 better selfElType 2023-03-26 14:30:49 +03:00
dzaima
01c457b77b make all cpy.*Arr function results Arr* 2023-03-11 16:51:13 +02:00
dzaima
c5aedaa414 switch to GCv2, various fixes/cleanup
includes:
  fixing some refcounts for FOR_BUILD build •FFI
  moving DEBUG_VM prints to stderr
  fixing heapverify reports of loose shape objects of fillarrs
  regular ol' adding-of-semicolon-after-label for old gcc
  move GC enable to after all initialization, not load_init
2023-03-05 01:23:53 +02:00
dzaima
16274e5952 bucket coalescing on GC 2023-03-04 20:09:12 +02:00
dzaima
ead637b135 don't leak c1fn/c2fn arguments from array function 2023-03-04 18:58:07 +02:00
dzaima
a928277e8c make heapverify run on GC_VISIT_V2
also make it able to track shape object leaks
2023-02-25 00:21:15 +02:00
dzaima
6e6169530d GC v2 2023-02-24 23:28:55 +02:00
dzaima
deee2c7a18 use C1 & C2 more 2023-02-24 15:53:11 +02:00
Marshall Lochbaum
89e6be10e5 Add eqFns to calls.h and use for Find 2023-02-20 10:07:44 -05:00
Marshall Lochbaum
b56e547e34 Define eqFns in non-Singeli build 2023-02-20 08:20:05 -05:00
dzaima
7b57b4ae39 explicitly mark code sections where allocations aren't allowed to happen 2023-02-18 17:46:55 +02:00
dzaima
c32285dba9 Singeli copy from unaligned bitarr 2023-02-18 11:52:45 +02:00
dzaima
f700a3e150 pad input cells when needed for for ∊𝕩, ⊐𝕩, ⊒𝕩 2023-02-13 00:19:50 +02:00
dzaima
855541954f initial bit widen&narrow for ⊏ 2023-02-10 17:59:22 +02:00
dzaima
a84ca6c5d6 strict prototypes 2023-02-03 15:33:31 +02:00
dzaima
05c1270344 better 𝕨⊏𝕩 with 0=×´≢𝕨 2023-02-02 00:40:52 +02:00
dzaima
c5272b47fb allow running el2t on el_B & el_MAX
under the assumption that the result won't actually be used; but if it is, trying to free or gc the object will result in a crash
2023-02-01 22:48:10 +02:00
dzaima
f13e82af62 fix leaking in comp.c 2023-01-26 19:27:43 +02:00
dzaima
4945a90ff0 valgrind changes 2023-01-18 02:05:24 +02:00
dzaima
540b37ae6a shape replacement utility 2023-01-17 03:47:14 +02:00
dzaima
46f657713c don't rely on bqn_fmt when !FORMATTER or CBQN isn't yet initialized 2023-01-09 02:30:29 +02:00
dzaima
86ae984af0 more print function renaming 2023-01-09 02:17:12 +02:00
dzaima
a9c70d9d72 printing method overhaul 2023-01-09 01:42:44 +02:00
dzaima
6a9e03bdb1 use arr_shSetU/arr_shSetI inline
and use incG more in rank_c2
2022-12-28 17:31:02 +02:00
dzaima
4884580037 rearrange arr_shCopyUnchecked to not read SH(o) twice
and, while making a change that requires rebuilding all of CBQN, also make more of the arr_* fns return their Arr* argument to prepare for using them inline
2022-12-28 16:23:27 +02:00
dzaima
75fe558f1c detect writes past the end of a TALLOC allocation 2022-12-27 02:29:24 +02:00
dzaima
013897cc16 add runtime calls to WARN_SLOW 2022-12-26 23:15:56 +02:00
dzaima
09b3279958 unified Singeli including mechanism 2022-12-18 01:54:07 +02:00
dzaima
dbc7c83f70 move usum to fold.c
but don't do anything useful with that because usum needs to also check for negative numbers
2022-11-27 15:45:33 +02:00
dzaima
24195780df reorder headers to allow OpenBSD hack to function 2022-11-20 18:22:51 +02:00
dzaima
07fa4a066b save replxx history more 2022-11-17 19:18:33 +02:00
dzaima
94f8b189f7 REINIT_TAIL → FINISH_OVERALLOC 2022-11-17 18:56:46 +02:00
dzaima
1ac5f0a49d arr_shCopy that doesn't compare IA 2022-11-17 18:56:46 +02:00
dzaima
e5a9c7536d array tail overwriting checker 2022-11-17 18:56:46 +02:00
dzaima
360aabb7cc option to noinline mm_alloc & mm_free 2022-11-17 18:56:46 +02:00
dzaima
4f9af9965c clangd compilation command generating utility 2022-11-06 18:34:47 +02:00
dzaima
4daabd708a introduce calls.h, move vec_addN and vec_join to core header
and remove a bunch of apparently unnecessary mut.h imports
2022-11-02 23:17:52 +02:00
dzaima
8d6172126c use void* instead of u8* for singeli function arguments 2022-10-25 17:27:08 +03:00
Marshall Lochbaum
0f7bfa2575 Implement bit_find and fast self-search for booleans 2022-10-23 22:08:08 -04:00
Marshall Lochbaum
447ce6163f Introduce bit_has and use for ∧´, ∨´, and 𝕨∊bool 2022-10-23 22:08:08 -04:00