Commit Graph

2433 Commits

Author SHA1 Message Date
Marshall Lochbaum
eb34213f0f Fast ≍˘ for matching-type type-sized cells 2023-12-30 21:45:24 -05:00
Marshall Lochbaum
58f4f15f8f Move more functionality to avx512.singeli 2023-12-30 10:43:40 -05:00
Marshall Lochbaum
92db3f15d0 Implement ≠` with AVX-512 clmul and GFNI 2023-12-30 10:43:06 -05:00
dzaima
9dc44ed1a9 make singeli/arch.bqn the source of SINGELI_AVX2
+ removes noting of lack of AVX2, which isn't shown from the makefile anyway
2023-12-30 02:09:56 +02:00
dzaima
18d2fa5f1c rename Singeli select function
in anticipation to Singeli update which adds select as a builtin
2023-12-29 23:35:22 +02:00
dzaima
f11bebf8f4 fix usz=64 build 2023-12-28 19:17:57 +02:00
Marshall Lochbaum
dcb031d142 Make sure value in store{} has an appropriate type 2023-12-27 16:44:53 -05:00
dzaima
ce31945124 fix "ab"⍷⟨⟩ 2023-12-27 19:16:34 +02:00
dzaima
add8ba353e require MAP_FIXED_NOREPLACE on linux for JIT 2023-12-26 02:53:47 +02:00
dzaima
7c50d210ff fix FreeBSD name conflict 2023-12-26 00:47:11 +02:00
dzaima
2e61f52d22 use MAP_EXCL on FreeBSD
OpenBSD should be fine as is, as it by default respects the hint if possible (I believe, at least, looking at its man page)
2023-12-26 00:47:11 +02:00
dzaima
f0c1962596 more typed ⌾(list⊸⊏) 2023-12-19 17:41:17 +02:00
dzaima
17c575edba trivial fast path for >depth1arr 2023-12-16 01:45:29 +02:00
dzaima
470e77b6b3 more typed 𝔽⌾(m⊸/) 2023-12-15 23:53:26 +02:00
dzaima
72893fc2f5 cell-wise PervasiveDy` highRank 2023-12-15 21:43:07 +02:00
dzaima
66b5c1fc0a fix a⊒b on mixed-width characters 2023-12-15 20:02:14 +02:00
dzaima
840c40748f fix f64 scans on SSE2 2023-12-15 19:18:23 +02:00
dzaima
c785b3a7b8 squeeze created arrays in F⍟arr 2023-12-15 18:05:20 +02:00
dzaima
94b1d90995 SSE2 & NEON /⁼ 2023-12-14 18:08:56 +02:00
dzaima
f71d2ff376 remove unused name variables 2023-12-14 17:45:04 +02:00
dzaima
7268c11df4 more fixes of path display 2023-12-13 22:03:00 +02:00
dzaima
a3a9403b59 fix paths shown in error stacktraces 2023-12-13 21:59:23 +02:00
dzaima
7bf379a44e check that -o output is a list 2023-12-13 17:49:54 +02:00
dzaima
8cce6b7add set re_map more properly 2023-12-12 13:32:46 +02:00
dzaima
653583eb1d make •Import follow ReBQN 2023-12-11 14:02:38 +02:00
dzaima
ec4db6dbad tiny Singeli include changes 2023-12-10 15:55:57 +02:00
dzaima
3454fbe3ee defer negated ≤AVX2 comparison negation to GPR result 2023-12-05 17:37:37 +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
a439c64e85 fix error message of usum of i32arr encountering a negative element 2023-12-05 16:03:53 +02:00
dzaima
5c7ab3f9a8 change heuristic for when ⊔ separates filtering out ¯1
measurements of the previous one were affected by 08c4627686
2023-12-04 22:50:19 +02:00
dzaima
8870acd2c1 don't try to do 32 >> -1 2023-12-04 17:45:00 +02:00
dzaima
065f15d0e3 fix function type 2023-12-04 17:39:13 +02:00
dzaima
e2db41547d change threshold for a 𝕨⊐𝕩 case 2023-12-04 17:37:35 +02:00
dzaima
d7c153286e gc tests, more reuse removal 2023-12-04 12:07:03 +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
ecb2d5f63a fix GC referencing bug in reusing 𝕨𝔽`𝕩 by not bothering to reuse 2023-12-04 01:27:38 +02:00
dzaima
fcc939dbed debug flag for running a GC every n'th allocation 2023-12-03 23:34:49 +02:00
dzaima
6573232694 macro option for an intentionally-bad hash function for testing purposes 2023-11-29 18:58:34 +02:00
dzaima
609980f950 comment about HashMap entry format 2023-11-29 18:05:08 +02:00
Marshall Lochbaum
72a9a95819 Make sure •HashMap table leaves last entry empty, as a sentinel 2023-11-28 20:08:27 -05:00
Marshall Lochbaum
51027cabe1 Fix GC-after-free with multiple hash resizes 2023-11-28 16:53:45 -05:00
Marshall Lochbaum
53beab531b •HashMap key and value list compaction and methods to return those lists 2023-11-28 11:09:32 -05:00
Marshall Lochbaum
95f5e65b6c •HashMap delete with backwards shift; no key/value compaction yet 2023-11-28 10:52:56 -05:00
Marshall Lochbaum
ce9f460e2c •HashMap count and set functions 2023-11-28 10:33:41 -05:00
Marshall Lochbaum
016e428db6 Always store •HashMap keys and values as HArrs 2023-11-27 19:20:38 -05:00
Marshall Lochbaum
96c7f2eb1a Move •HashMap implementation details to search.c 2023-11-27 19:20:38 -05:00
Marshall Lochbaum
77bfc7dd1a Non-resizing static Robin Hood hashmap 2023-11-27 19:20:38 -05:00
Marshall Lochbaum
8edc965686 •HashMap stub with linear lookup 2023-11-27 19:20:38 -05:00
dzaima
adc4506ac8 fast path for ind integer checking 2023-11-26 22:16:53 +02:00
dzaima
4b67de5f83 don't need these comments
they're present in h.h, and trivial to determine from source anyway
2023-11-26 22:16:53 +02:00
dzaima
e9b7d027ca cleanup & fix various build types 2023-11-26 16:56:26 +02:00
dzaima
01a60dceff separate path & name, store path+name+args in state 2023-11-26 16:32:37 +02:00
dzaima
fe280613af fix toHArr usage in another place 2023-11-26 15:53:44 +02:00
dzaima
789064140b use isStr more, include builtin name in bad path messages 2023-11-26 15:37:41 +02:00
dzaima
31e4b29115 proper toHArr usage 2023-11-26 14:56:08 +02:00
dzaima
fce64987b1 helper for immediately-consumed block 2023-11-26 14:54:37 +02:00
dzaima
633bbc8112 don't need def_rt & def_glyphs either actually
+ clean up some gc_add-ing
2023-11-26 14:45:54 +02:00
dzaima
b28c1a8f01 get rid of global def_comp & def_compOpts, refcount fixes 2023-11-26 13:56:26 +02:00
dzaima
7dd398433b fix native compiler 2023-11-26 13:46:07 +02:00
dzaima
71ade3e9c6 add missed decrements, expand test 2023-11-26 01:27:36 +02:00
dzaima
3f62a51305 system value inheriting 2023-11-26 01:21:11 +02:00
dzaima
a93ea4dbaf base •ReBQN and •BQN onto outer re 2023-11-25 23:39:58 +02:00
dzaima
5e455372f0 more renaming & shuffling of things 2023-11-25 23:21:32 +02:00
dzaima
e25281518c move more things into re 2023-11-25 23:21:32 +02:00
dzaima
7c28c64178 change •BQN and •ReBQN to dynamically-computed functions 2023-11-25 23:21:32 +02:00
dzaima
7214017bb2 move •BQN and •ReBQN to computed sysvals 2023-11-25 23:21:32 +02:00
dzaima
7e0204083e name re parts 2023-11-25 23:21:32 +02:00
dzaima
7fb8ecfa86 rename things 2023-11-25 23:21:32 +02:00
dzaima
cd6da03fd9 always supply a valid re object 2023-11-25 23:21:32 +02:00
dzaima
7357820f19 start of compiler state refactoring 2023-11-25 23:21:32 +02:00
dzaima
dcf26f88d7 fix segfault during GC from compileAll's cpyHArr(objs) 2023-11-25 21:37:48 +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
db0bb1378c rearrange Body fields to pack better 2023-11-24 16:00:11 +02:00
dzaima
1d8479b589 apparently nothing uses the bc field in Comp anymore 2023-11-24 15:30:47 +02:00
dzaima
eb62b48e4e don't inline wyhash make_secret
+ remove wyhashmap, we don't need it, it breaks on collisions
2023-11-24 15:24:28 +02:00
dzaima
f02c92ee6a fix 3 ∨ "abc" 2023-11-23 18:13:51 +02:00
dzaima
8814a7e66e use 2x unroll for i16→u1 copying to utilize two-vector homMask 2023-11-21 02:45:33 +02:00
dzaima
773429a959 recursive base-case of homMask 2023-11-21 02:40:50 +02:00
dzaima
08fa7d3d30 specialize x86-64 homMask of 2x[n]i16, use for comparison 2023-11-21 02:29:03 +02:00
dzaima
3ebfb24b0f unroll copying to bitarr
+ clean up comparison code as bulk homMask is supported everywhere
2023-11-21 00:18:18 +02:00
dzaima
fe985722c2 move multi-vector homMask to allow NEON to override it 2023-11-21 00:18:18 +02:00
dzaima
d1f66dc75b check created bitarr size for overflow 2023-11-18 19:56:39 +02:00
dzaima
56cbe4aa03 mulHi → mulh for high half of element result
to not be confused with mulwHi or zipHi where it means providing the high batch of elements
2023-11-18 00:43:20 +02:00
dzaima
c8cdaf0216 Clear assumption about assignment result in const-folder 2023-11-17 17:44:32 +02:00
dzaima
2b56a300bc probably make ⊔ able to handle output subarray lengths over 2^32
still no support for (≠𝕨)≥2⋆32 though
2023-11-17 00:40:26 +02:00
dzaima
46e8ed1a3f fix SSE4.2 usz=64 build 2023-11-13 23:28:30 +02:00
dzaima
59208af520 remove old group path
effectively only got used for f64arr 𝕨; could transform to doing just that, but its inefficient type of the group arrays make it bad for that too
2023-11-13 23:16:02 +02:00
dzaima
f037754880 more specific empty array types 2023-11-13 23:16:02 +02:00
dzaima
8c7a3be036 remove unused includes 2023-11-13 21:48:01 +02:00
dzaima
b4e53abbe4 some comments 2023-11-13 16:38:02 +02:00
Marshall Lochbaum
c94d51dcaf Fixes for 64-bit usz 2023-11-13 08:24:51 -05:00
dzaima
4fb6ce602f add a require{} for CRC32 2023-11-13 12:56:48 +02:00
dzaima
5910c93fcb silence some warnings & errors in various build types 2023-11-13 12:54:49 +02:00
Marshall Lochbaum
09572de49a Credible resizing policy for dyadic search hashes 2023-11-12 22:07:29 -05:00
Marshall Lochbaum
ee7a11a279 Unify self-search hash thresholds across primitives; doesn't seem to hurt performance 2023-11-12 14:35:25 -05:00
Marshall Lochbaum
5957487b70 Faster iteration over non-empty entries for hash table resizing 2023-11-11 20:24:20 -05:00
Marshall Lochbaum
b404c7c1d1 Eliminate a loop when resizing ordered hash 2023-11-11 20:24:20 -05:00
Marshall Lochbaum
3a50cda5d3 Specialize Index-of tables on result type 2023-11-10 17:12:37 -05:00
Marshall Lochbaum
b782693d15 Insert maxh to a special end bucket for ⊒ and reverse ⊐ (fixes ⊒ maxh bugs) 2023-11-10 12:04:55 -05:00