Commit Graph

77 Commits

Author SHA1 Message Date
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
c94d51dcaf Fixes for 64-bit usz 2023-11-13 08:24:51 -05:00
dzaima
5910c93fcb silence some warnings & errors in various build types 2023-11-13 12:54:49 +02:00
Marshall Lochbaum
3a50cda5d3 Specialize Index-of tables on result type 2023-11-10 17:12:37 -05:00
Marshall Lochbaum
7b79dfc94e Update search implementation comments 2023-11-09 15:20:50 -05:00
Marshall Lochbaum
2c625127d5 Reverse hashed Index-of 2023-11-09 10:39:07 -05:00
Marshall Lochbaum
c75fdbc277 Reverse Member-of hash lookup 2023-11-07 22:07:17 -05:00
Marshall Lochbaum
8a2190b092 64-bit hashes with float normalization 2023-11-07 14:54:16 -05:00
Marshall Lochbaum
c042fe6ca3 Vector binary search for integer Index-of 2023-11-06 15:43:26 -05:00
Marshall Lochbaum
52bca6a55c Multiple IndexOfOne to search for a few values in a large array 2023-11-06 12:16:59 -05:00
Marshall Lochbaum
d154ece51a Vector binary search for 16-bit Member-of in addition to 32 (8 is too slow) 2023-11-06 09:37:58 -05:00
Marshall Lochbaum
11245d385e Vector binary search Member-of 2023-11-05 22:10:39 -05:00
Marshall Lochbaum
8aa6c07199 And hashed 32-bit Progressive Index-of 2023-11-02 20:29:54 -04:00
Marshall Lochbaum
d54621b5dd Extend hash table to 32-bit Index-of 2023-11-02 12:00:32 -04:00
Marshall Lochbaum
ed03720441 Robin Hood hash table for 32-bit membership 2023-11-01 15:46:45 -04:00
Marshall Lochbaum
0391cf4ca3 Fast number-character (no matches) searches 2023-10-31 22:09:11 -04:00
dzaima
5efd90cc91 rename elWidthLogBits to something less long & add byte variant 2023-09-12 19:58:56 +03:00
dzaima
9cfc3f3f25 various changes on filling arrays with the same element 2023-07-12 16:23:03 +03:00
dzaima
fd72ea79c8 another gcc warning 2023-05-21 23:39:18 +03:00
dzaima
f6703df0b2 range calculation functions 2023-05-19 14:01:32 +03:00
dzaima
ec106c0b31 better heuristic for 𝕨∊𝕩 comparison-or path 2023-05-17 18:42:24 +03:00
dzaima
e4d222173d a bunch of fixes for generic architecture & wasm 2023-05-16 00:07:48 +03:00
dzaima
6dc24bd99b free arguments of SIMD 𝕨∊𝕩 & ∊𝕩 2023-05-12 13:51:30 +03:00
Marshall Lochbaum
25883b410c Retune boundary for small-𝕩 linear Member Of 2023-05-11 21:11:43 -04:00
Marshall Lochbaum
464dd27a37 SIMD table intialization for Index-of 2023-05-11 21:05:24 -04:00
Marshall Lochbaum
844b537593 Singeli 1-byte table implementations for generic architecture 2023-05-11 21:05:23 -04:00
Marshall Lochbaum
017e2433fb Fast paths for all empty-argument search cases 2023-05-11 20:59:53 -04:00
Marshall Lochbaum
0232f91582 AVX2 bit table Member-of 2023-05-11 20:59:52 -04:00
dzaima
03a28e4e34 fix float normalization from a •bit._cast result mutating the original 2023-05-11 22:39:59 +03:00
dzaima
3b580cbd0c rename unit creation methods 2023-04-29 17:39:13 +03:00
dzaima
865257fdb6 more header file cleanup 2023-04-29 17:39:13 +03:00
dzaima
ee47921b43 normalize ¯0 2023-04-14 16:28:27 +03:00
dzaima
2fd390ebf8 better fix for character 𝕨∊𝕩 & 𝕨⊐𝕩 2023-04-14 15:42:58 +03:00
dzaima
4d3db9ca0b fix ∊ & ⊐ being broken on one c8 & one c16 argument 2023-04-14 00:05:23 +03:00
dzaima
876914d053 Singeli single-element search 2023-04-06 14:56:49 +03:00
dzaima
a7e2d9ea17 extract single-element search to its own function 2023-04-06 13:38:33 +03:00
dzaima
1f2456042c clean up calls.h includes 2023-03-26 15:54:27 +03:00
dzaima
deee2c7a18 use C1 & C2 more 2023-02-24 15:53:11 +02:00
dzaima
428064a5c2 skip lookup table zero-initialization for x⊐x 2023-02-18 23:57:02 +02:00
dzaima
32142a45d6 Widen cells in 𝕨∊𝕩, 𝕨⊐𝕩, 𝕨⊒𝕩 2023-02-17 00:27:15 +02:00
dzaima
a84ca6c5d6 strict prototypes 2023-02-03 15:33:31 +02:00
dzaima
ea0aa709fe squeeze result of ⊒𝕩, copy result of ⊐𝕩 to smaller width when possible 2023-01-27 02:57:05 +02:00
dzaima
ae4c4a03ee copy ⊐ and ⊒ results to more correct element width arrays 2023-01-27 02:09:43 +02:00