dzaima
|
d21a77119f
|
more verification of •bit._cast types, remove 'n'
|
2024-03-30 17:55:43 +02:00 |
|
dzaima
|
ac069134c3
|
fix ⟨1.5⟩ ⊏ "ab"‿"cd"
|
2024-03-25 16:18:01 +02:00 |
|
dzaima
|
a94903cb12
|
fix 𝕨⊏unit
|
2024-03-25 16:18:01 +02:00 |
|
dzaima
|
10a58878d7
|
fix GroupLen on array elements outside i64 range
|
2024-03-25 16:18:01 +02:00 |
|
dzaima
|
0c3d83c50b
|
fix ⊑˘ with bitarr 𝕩
|
2024-02-27 14:27:42 +02:00 |
|
dzaima
|
694920c273
|
minor code cleanup
|
2024-02-27 00:40:16 +02:00 |
|
dzaima
|
875f9185bf
|
use ux a tiny bit more, add a PLAINLOOP
|
2024-02-27 00:37:47 +02:00 |
|
dzaima
|
1318026c4e
|
a bunch of vfor
|
2024-02-13 22:34:16 +02:00 |
|
dzaima
|
3fc3338256
|
extract independent load from loop
|
2024-02-13 22:33:54 +02:00 |
|
dzaima
|
f981f6963b
|
use ux for loop index in reverse
makes gcc autovectorizer happier
|
2024-02-13 22:31:22 +02:00 |
|
dzaima
|
5abb09ca74
|
remove barely-useful elType==el_i32 path of reshape
perhaps could be replaced with an <=el_i32 path that still uses GetU but just skips numberness/integerness checks and ∘/⌊/⌽/↑ logic
|
2024-02-13 22:30:11 +02:00 |
|
dzaima
|
73a2b06703
|
more PLAINLOOP
|
2024-02-08 19:26:35 +02:00 |
|
dzaima
|
9cb0ab2fbb
|
Use getRange_fns for repeat_bounds
|
2024-02-08 19:25:30 +02:00 |
|
dzaima
|
291d3ef5d7
|
deduplicate sh_c2 setup & output prep
|
2024-02-04 15:31:38 +02:00 |
|
dzaima
|
4f39729013
|
Merge pull request #106 from vylsaz/win-sh2
Implement •SH for Windows
|
2024-02-04 14:48:36 +02:00 |
|
dzaima
|
a3392fd6c1
|
fix casrt_c2 more
|
2024-02-04 14:47:43 +02:00 |
|
vylsaz
|
42e4956fb9
|
Replaced globals with argument to thread procedure
|
2024-02-04 02:35:47 +00:00 |
|
dzaima
|
2dfc8933bd
|
fix refcount leak in casrt_c2
|
2024-02-03 18:20:07 +02:00 |
|
vylsaz
|
74d3620839
|
Implement •SH
|
2024-02-03 01:45:56 +00:00 |
|
dzaima
|
1e8c390e6a
|
include file name in failed complication error messages
|
2024-02-01 22:52:55 +02:00 |
|
dzaima
|
592a8312ac
|
a bunch of PLAINLOOP
|
2024-02-01 21:26:08 +02:00 |
|
dzaima
|
1b26e85325
|
don't need to mark static globals as hidden
gcc complains about this
|
2024-02-01 21:26:08 +02:00 |
|
dzaima
|
c078f62b1f
|
add GLOBAL, INIT_GLOBAL, or const to globals
|
2024-02-01 21:13:39 +02:00 |
|
dzaima
|
041be9a612
|
rearrange elses to get rid of clangd warning
|
2024-01-28 02:29:03 +02:00 |
|
dzaima
|
ffffdb5895
|
relax take/drop overflow checking
|
2024-01-19 18:03:54 +02:00 |
|
Marshall Lochbaum
|
2af2fb8e0c
|
Use ⍷⊸⊐ for Classify (⊐) on long 1-byte arguments if SIMD bit-table is available
|
2024-01-07 19:54:13 -05:00 |
|
Marshall Lochbaum
|
dbb6fbade1
|
Fast interleaving (≍˘) for pointer arrays
|
2023-12-31 16:28:59 -05:00 |
|
Marshall Lochbaum
|
5f3a4769be
|
Rename constrep.singeli to replicate.singeli; not just constant now
|
2023-12-31 15:30:20 -05:00 |
|
Marshall Lochbaum
|
e50ae40f8b
|
Port replicate-by-scan code from C to Singeli
|
2023-12-31 15:26:58 -05:00 |
|
Marshall Lochbaum
|
3584ebd7a6
|
Non-BMI2 bit interleaving implementation
|
2023-12-30 21:45:24 -05:00 |
|
Marshall Lochbaum
|
eb34213f0f
|
Fast ≍˘ for matching-type type-sized cells
|
2023-12-30 21:45:24 -05:00 |
|
dzaima
|
ce31945124
|
fix "ab"⍷⟨⟩
|
2023-12-27 19:16:34 +02:00 |
|
dzaima
|
f0c1962596
|
more typed ⌾(list⊸⊏)
|
2023-12-19 17:41:17 +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
|
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
|
653583eb1d
|
make •Import follow ReBQN
|
2023-12-11 14:02:38 +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
|
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
|
ecb2d5f63a
|
fix GC referencing bug in reusing 𝕨𝔽`𝕩 by not bothering to reuse
|
2023-12-04 01:27:38 +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
|
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
|
789064140b
|
use isStr more, include builtin name in bad path messages
|
2023-11-26 15:37:41 +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
|
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
|
7357820f19
|
start of compiler state refactoring
|
2023-11-25 23:21: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
|
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 |
|
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
|
ee856a4880
|
Move hash resizing to a generator, and other refactoring
|
2023-10-31 22:09:11 -04:00 |
|
Marshall Lochbaum
|
0391cf4ca3
|
Fast number-character (no matches) searches
|
2023-10-31 22:09:11 -04:00 |
|
Marshall Lochbaum
|
0fb845d336
|
Move self-search hash table code to Singeli
|
2023-10-31 22:09:11 -04:00 |
|
dzaima
|
ad574d2269
|
refactor & document #define-s, always-available ')gc log' and ')mem log'
|
2023-10-31 03:16:48 +02:00 |
|
dzaima
|
08c4627686
|
fix dense case of •rand.Subset not updating seed
|
2023-10-30 17:03:38 +02:00 |
|
dzaima
|
7ffd744375
|
reorganize file writing
fixes some unclosed file descriptors & files being made on an invalid argument
|
2023-10-28 19:27:00 +03:00 |
|
dzaima
|
b6594008cd
|
fix non-Singeli builds
|
2023-10-26 17:32:12 +03:00 |
|
dzaima
|
577442449d
|
inverses for •math.Atan2, •math error tests
|
2023-10-22 14:33:51 +03:00 |
|
dzaima
|
4322303031
|
Fix 2‿2↕3‿3‿3⥊↕27
|
2023-10-12 12:43:08 +03:00 |
|
dzaima
|
e7b87f669f
|
fix arr÷negativeZero, set proper float expected values
|
2023-09-21 19:03:30 +03:00 |
|
dzaima
|
f6a9c30889
|
•internal.HeapStats
|
2023-09-18 23:38:06 +03:00 |
|
dzaima
|
df0ccdf2d7
|
add error message on missing posix_spawn support in make for-build
|
2023-09-17 13:39:22 +03:00 |
|
dzaima
|
299168fb16
|
fast numarr÷scalarPowOf2
|
2023-09-12 23:57:50 +03:00 |
|
dzaima
|
5efd90cc91
|
rename elWidthLogBits to something less long & add byte variant
|
2023-09-12 19:58:56 +03:00 |
|
Marshall Lochbaum
|
d16ba6c3b1
|
Move xor-scan to scan.singeli; remove neq.singeli
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
e261e80168
|
SSE min/max and pluswrap scans
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
00c454d37a
|
Add generic-architecture versions of Singeli scans
|
2023-08-26 07:26:33 -04:00 |
|
dzaima
|
ec14d45c50
|
round up pointers in self-search allocs
|
2023-08-25 04:03:25 +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
|
8975f6af00
|
fast 1|x
|
2023-08-24 21:32:35 +03:00 |
|
dzaima
|
3e6e158696
|
native 𝕨⍷𝕩 when 1≥=𝕨 and 2≥=𝕩
|
2023-08-24 19:46:57 +03:00 |
|
dzaima
|
6eaa9238bc
|
separate BSDs
|
2023-08-20 19:33:11 +03:00 |
|
dzaima
|
1bb686a9ff
|
fix UB in grade.h
|
2023-08-19 21:48:11 +03:00 |
|
dzaima
|
2732becf50
|
global STR0/STR1 definitions
|
2023-08-19 20:12:53 +03:00 |
|
dzaima
|
25c2629842
|
•platform
incl. adding support for REPL completion of •a.b.c (i.e. >1 '.')
|
2023-08-19 18:25:52 +03:00 |
|
dzaima
|
df56f6b2fc
|
fix 𝕨•FLines𝕩 with invalid elements in 𝕩
|
2023-08-13 03:51:06 +03:00 |
|
Marshall Lochbaum
|
2dd3a0fdfa
|
Boolean compress implementation comments
|
2023-08-07 15:33:37 -04:00 |
|
Marshall Lochbaum
|
4e9745688b
|
Use generic boolean Compress as the sparse case with Singeli
|
2023-08-07 13:47:58 -04:00 |
|
Marshall Lochbaum
|
a7908a10b0
|
Faster, sparse, non-Singeli boolean Compress
|
2023-08-07 12:26:40 -04:00 |
|
Marshall Lochbaum
|
056b18edd2
|
Move pext-based compress loop from C to Singeli
|
2023-08-05 20:38:54 -04:00 |
|
Marshall Lochbaum
|
7767cf933f
|
Remove boolean Compress overallocation: not needed with w masked off
|
2023-08-05 20:38:54 -04:00 |
|
dzaima
|
682d5986d8
|
slightly more accurate trailing newline removal for •GetLine
|
2023-08-04 21:09:45 +03:00 |
|
dzaima
|
a1e4f9bd6f
|
remove multiple trailing newline characters from •GetLine
Windows adds \r\n, and without this the \r stays
|
2023-08-04 20:52:07 +03:00 |
|
dzaima
|
1454ca3a1a
|
expand & test FFI error checking
|
2023-07-28 13:59:25 +03:00 |
|
dzaima
|
6e96600878
|
move unaligned load & store to base.singeli
|
2023-07-20 00:21:09 +03:00 |
|
dzaima
|
6930bc34b6
|
further update slash.c implementation comments
|
2023-07-19 16:51:24 +03:00 |
|
Marshall Lochbaum
|
301a23fb1f
|
Update where/compress implementation comments
|
2023-07-19 09:35:40 -04:00 |
|
Marshall Lochbaum
|
64d65ae837
|
Never use generic dense compress methods if use_table: where is faster
|
2023-07-18 21:35:12 -04:00 |
|
Marshall Lochbaum
|
68978f7e10
|
Table-based 1- and 2-byte Where
|
2023-07-17 16:05:06 -04:00 |
|
Marshall Lochbaum
|
8b297ae2dc
|
Dedicated 32-bit Singeli where, taking index offset
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
3bd8d1de68
|
Extend all Singeli Compress methods to do Where
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
4415869496
|
Generic Singeli where implementation
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
f5121f6806
|
Thresholds for compress methods (versus sparse) defined in Singeli
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
f852d12a5c
|
Generic Singeli compress implementation
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
d956ba921b
|
Non-overwriting 1-byte and 2-byte compress/where
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
8f4b1966cb
|
Non-overwriting AVX2 4-byte and 8-byte compress, using a buffer
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
0921fc2c62
|
AVX2 compress implementations using permutevar and lookup tables
|
2023-07-16 21:56:33 -04:00 |
|
Marshall Lochbaum
|
f315a6d3ea
|
Emulate pext instruction in Singeli
|
2023-07-16 21:56:33 -04:00 |
|
dzaima
|
cf6a290e5c
|
•file.RealPath
|
2023-07-16 01:42:30 +03:00 |
|
dzaima
|
9cfc3f3f25
|
various changes on filling arrays with the same element
|
2023-07-12 16:23:03 +03:00 |
|
vylsaz
|
e4542f70a6
|
Implement •term.CharN and •term.RawMode for Windows
|
2023-07-11 03:15:48 +00:00 |
|
dzaima
|
56a1fc3637
|
use float getting functions for getting floats
|
2023-07-10 23:48:07 +03:00 |
|
dzaima
|
9b0299d1a5
|
fix (<1)≠`5⥊1
|
2023-07-10 23:25:28 +03:00 |
|
dzaima
|
53266ffd88
|
fix (<1)⌈`↕10
|
2023-07-10 23:21:36 +03:00 |
|
dzaima
|
acbfcd7302
|
fix another weird case of 𝕨∾𝕩
|
2023-07-10 22:55:00 +03:00 |
|
dzaima
|
24fea51bdd
|
fix unshare of fillslice
|
2023-07-10 22:55:00 +03:00 |
|
dzaima
|
cd7807fba0
|
NEON constrep
|
2023-07-10 17:11:15 +03:00 |
|
dzaima
|
1cea42cad3
|
use getter over 𝕨 for generic 𝕨⍋𝕩
doesn't change perf, but leads to fast amortized long⍋short
|
2023-07-10 16:50:02 +03:00 |
|
Marshall Lochbaum
|
492e97e2ca
|
Right argument narrowing for numeric Bins
|
2023-07-10 07:14:44 -04:00 |
|
Marshall Lochbaum
|
9511598aa3
|
Fast Bins when either argument is boolean
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
1fa00c9c6f
|
Update bins implementation comments
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
0346ff7c2d
|
Use type of ≠𝕨 for Singeli Bins result and allocate outside Singeli
|
2023-07-10 07:13:21 -04:00 |
|