Marshall Lochbaum
|
f1972fc408
|
Faster stride-1 check
|
2025-03-10 12:57:25 -04:00 |
|
Marshall Lochbaum
|
e42273bfe8
|
Generic stride-1 𝔽`˘ implementation
|
2025-03-10 12:50:54 -04:00 |
|
Marshall Lochbaum
|
bbe4549aff
|
Scalar implementation of 𝔽˝ for generic arithmetic 𝔽 and short rows
|
2025-03-10 12:48:06 -04:00 |
|
Marshall Lochbaum
|
e898a81d68
|
Use a possibly-overlapping word and constant-length loop in k/bool, like ⊣`
|
2025-03-09 08:44:42 -04:00 |
|
Marshall Lochbaum
|
302c2f926f
|
AVX2 k/bool for odd 64<k<256 using shift-based masks
|
2025-03-09 08:44:42 -04:00 |
|
dzaima
|
79fc8d5116
|
use direct copy on known-different-eltype arrays
|
2025-03-04 23:18:30 +02:00 |
|
Marshall Lochbaum
|
d9a80ee83b
|
Test bound and length instead of rank in scan where possible
|
2025-03-04 10:59:40 -05:00 |
|
dzaima
|
9fdeb5379a
|
fix old gcc
|
2025-03-04 04:04:04 +02:00 |
|
Marshall Lochbaum
|
010e6a10d4
|
Implementation comments for new high-rank scans
|
2025-03-03 19:56:53 -05:00 |
|
Marshall Lochbaum
|
180c79e751
|
Strided +`, widening and re-trying on overflow
|
2025-03-03 06:54:40 -05:00 |
|
Marshall Lochbaum
|
87a7d066c8
|
Strided ⌊⌈ scans with shuffles
|
2025-03-03 06:54:40 -05:00 |
|
Marshall Lochbaum
|
ee6b91be8a
|
Basic strided ∧∨≠= scan implementations
|
2025-03-03 06:54:40 -05:00 |
|
Marshall Lochbaum
|
90d0f3015a
|
Use rank-1 scan special code whenever cell size is 1
|
2025-03-03 06:54:40 -05:00 |
|
dzaima
|
d3b4c3cc26
|
flush stdout on •Show and •Out
|
2025-03-03 00:53:55 +02:00 |
|
dzaima
|
05a9cd736b
|
more spaces around names between name and 𝕨/𝕩 in error messages
|
2025-03-02 19:57:38 +02:00 |
|
dzaima
|
bdf9a52625
|
more proper error messages for /⁼𝕩
|
2025-03-02 19:50:01 +02:00 |
|
dzaima
|
17ec5f0a8a
|
add 𝕩 to error messages of <⁼𝕩, ⋈⁼𝕩, ≍⁼𝕩
|
2025-03-02 19:32:49 +02:00 |
|
dzaima
|
9826c4ce0e
|
add 𝕨/𝕩 in dyadic ⌽/⌽⁼ error message
|
2025-03-02 19:29:49 +02:00 |
|
Marshall Lochbaum
|
a775520927
|
Update scan implementation comments
|
2025-02-26 08:21:22 -05:00 |
|
Marshall Lochbaum
|
242a61db11
|
Faster <`, adding instructions to cut dependency chains
|
2025-02-18 16:29:49 -05:00 |
|
dzaima
|
2cb15c936d
|
get rid of b(x) macro
|
2025-02-08 17:36:44 +02:00 |
|
dzaima
|
74483f3859
|
more spaces between 𝕨/𝕩 and names, re-remove •SH args
sh_c1 calls sh_c2, so the arity isn't function-specific
|
2025-02-07 07:57:51 +02:00 |
|
tankorsmash
|
b945e48d29
|
add spacing around system functions; add missing args for SH; fix wrong args for bit._cast
|
2025-02-06 20:17:18 -05:00 |
|
dzaima
|
e3a4132722
|
clean up error messages
incl. correcting •_timed's message being wrong
|
2025-02-06 12:32:19 +02:00 |
|
tankorsmash
|
5790d126cd
|
add best effort guesses for many more builtin error messages
|
2025-02-05 19:56:08 -05:00 |
|
tankorsmash
|
63ee20b6fe
|
add best effort guesses for many builtin error messages
|
2025-02-05 19:40:27 -05:00 |
|
tankorsmash
|
dd5d17ca83
|
add best effort guesses for builtins/cmp,fns,fold.c
I'm not sure about modifiers so I left them without arguments
|
2025-02-05 19:32:49 -05:00 |
|
tankorsmash
|
559b3f0d6e
|
add best effort guesses for w and x for builtins/cells.c
|
2025-02-04 19:00:15 -05:00 |
|
tankorsmash
|
dce39a1b05
|
add w and x for builtins/arithm.c
|
2025-02-04 18:57:25 -05:00 |
|
tankorsmash
|
6be291dd6b
|
add w and x for builtins/arithd.c
|
2025-02-04 18:55:14 -05:00 |
|
tankorsmash
|
80d1681b18
|
prefer using w and x inside error messages
|
2025-02-03 20:39:44 -05:00 |
|
dzaima
|
d506691690
|
fix 𝕨⍋𝕩 issues around NaNs
|
2025-02-01 20:55:36 +02:00 |
|
dzaima
|
9be5bf45b4
|
fix signed offset having unsigned type
|
2025-02-01 20:55:36 +02:00 |
|
dzaima
|
d06200445b
|
MAYBE_UNUSED
|
2025-02-01 20:55:36 +02:00 |
|
dzaima
|
dcbceccff8
|
fix integer wrapping in grade sum check
|
2025-01-24 03:49:25 +02:00 |
|
dzaima
|
8b0d0399e4
|
fix various F⌾(G⊸Specialized)x
|
2025-01-16 22:16:49 +02:00 |
|
dzaima
|
517300e567
|
Windows: static-method-only .c files to .h
|
2025-01-16 22:06:20 +02:00 |
|
vylsaz
|
40609b2f5f
|
Windows: sh: revert to using calloc() in reading threads
|
2025-01-16 22:06:20 +02:00 |
|
vylsaz
|
67c2850e38
|
Windows: sh using utf16; simply argument quoting
|
2025-01-16 22:06:20 +02:00 |
|
dzaima
|
a02f195555
|
make native inverse bindings for ⋆⁼x & w⋆⁼x
|
2024-12-18 13:29:32 +02:00 |
|
dzaima
|
1822602c34
|
cleanup from clang's --analyze
|
2024-12-18 13:03:48 +02:00 |
|
dzaima
|
d1a9669e76
|
fix •math.LCM on arrays
|
2024-12-13 07:40:43 +02:00 |
|
dzaima
|
5ecd1858ef
|
fix 1⌾(⟨0⟩⊸⊏)⟨0⟩
|
2024-12-07 06:54:07 +02:00 |
|
dzaima
|
162e6ff387
|
decG more
found automatically via awful hack via GUARANTEED
|
2024-12-04 00:10:52 +02:00 |
|
dzaima
|
81abc80863
|
fast highrank⊸⊏˘ table
|
2024-12-02 21:57:44 +02:00 |
|
dzaima
|
d988a620fd
|
native F⌾(a⊸⥊)
|
2024-11-26 18:08:15 +02:00 |
|
dzaima
|
92641f26ba
|
squeeze fns haven't been AVX2-specific for a while
|
2024-11-22 12:48:59 +02:00 |
|
dzaima
|
7df2f9ba4f
|
a couple renames & simplifications
|
2024-11-22 00:44:03 +02:00 |
|
dzaima
|
f0223b8baf
|
properly add 1<<31
|
2024-11-21 23:04:02 +02:00 |
|
Marshall Lochbaum
|
342cadfc00
|
Check for or handle argument length >2⋆31 in /⁼
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
194e8c3f22
|
Update /⁼ implementation comments
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
0bbb335893
|
Do general i8 and i16 /⁼ counts to i16 buffer, plus overflow list
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
fb5ee179cb
|
Squeeze for slash_im generic case instead of converting individual elements to numbers
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
96b198f643
|
Condition all the i8 to i32 /⁼ optimization on SINGELI_SIMD, for simplicity
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
e6940e73d0
|
Fast /⁼ of sorted arguments using semi-sparse representation
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
3b103aadd0
|
Run-based i32 /⁼ (leaving out sum-based)
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
4aea668a6c
|
Allow i16 /⁼ to jump to Singeli code after range checking
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
926e59483d
|
More precise sparse check for i8 /⁼ result: previously stopped at 65
|
2024-11-17 15:29:36 -05:00 |
|
Marshall Lochbaum
|
e24d0bac63
|
Extend SIMD counting to i16 in addition to i8
|
2024-11-17 15:29:36 -05:00 |
|
dzaima
|
cbac419b4a
|
fix ⍷2‿0⥊x
|
2024-11-06 22:34:55 +02:00 |
|
dzaima
|
d47cedb165
|
some cleanup
|
2024-11-06 22:32:05 +02:00 |
|
Marshall Lochbaum
|
15df6afc7d
|
Implementation comments for transpose with short height/width
|
2024-11-05 22:04:23 -05:00 |
|
Marshall Lochbaum
|
d7b508ff3b
|
Move select_cells_single (atom⊸⊏˘) to select.c and use for any singleton index
|
2024-11-05 21:48:54 -05:00 |
|
Marshall Lochbaum
|
5bdee886cc
|
Extend kernel transpose from AVX2 only to SSE2, NEON
|
2024-11-05 21:48:54 -05:00 |
|
Marshall Lochbaum
|
4669418f1c
|
Extend modular permutation ⊣˝˘ to multi-byte element types
|
2024-11-05 21:48:54 -05:00 |
|
Marshall Lochbaum
|
9997c52e4c
|
Initial 1-byte ⊣˝˘ with blends and modular permutation
|
2024-11-05 21:48:54 -05:00 |
|
dzaima
|
0c6e32a24c
|
fix si_select_cells_bit_lt64 signature
|
2024-10-23 21:53:48 +03:00 |
|
dzaima
|
52f318e755
|
EACH_FILLS tests
|
2024-10-14 05:09:03 +03:00 |
|
dzaima
|
1e00aa71c9
|
atomEqualF & atomEEqual cleanup
|
2024-10-10 04:12:07 +03:00 |
|
dzaima
|
503bddced5
|
bring back atomEqualF fast path
|
2024-10-10 04:00:43 +03:00 |
|
dzaima
|
6bd47b067e
|
split apart def_decompose
|
2024-10-10 02:38:17 +03:00 |
|
dzaima
|
3d4a31ae6f
|
access function/modifier runtime ID through macro
|
2024-10-10 02:38:17 +03:00 |
|
dzaima
|
d4b36b3017
|
access function/modifier native ID through macro
|
2024-10-10 02:38:17 +03:00 |
|
dzaima
|
03fc22662b
|
add •internal.Properties for better build parameter detecting
|
2024-10-10 01:33:17 +03:00 |
|
dzaima
|
3ed6241609
|
don't attempt to use BMI2 on x86-32
|
2024-10-09 03:31:20 +03:00 |
|
dzaima
|
183f64c1f9
|
make ⟨⟩≡∾⟨⟩ under PROPER_FILLS
|
2024-10-09 02:42:17 +03:00 |
|
dzaima
|
03f2f29f3b
|
use tagu64 in more cases where it should be
and make misused tag() an error
|
2024-10-09 02:42:17 +03:00 |
|
dzaima
|
0eb7f2e5f4
|
make ⊢¨ attempt to squeeze generic arrays in PROPER_FILLS
also make it not segfault on an input without a fill
|
2024-10-09 02:42:17 +03:00 |
|
dzaima
|
f33e1e0dcc
|
allZeroes & allOnes variants which set result flags
|
2024-10-09 02:42:17 +03:00 |
|
dzaima
|
b2bfa06a4c
|
allBit cleanup in cells.c
|
2024-10-09 02:42:17 +03:00 |
|
dzaima
|
1eee4d7450
|
mark input of ∊𝕩 as fl_asc|fl_dsc if it's all same
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
7326348c79
|
fast ⍷𝕩 & ∊𝕩 on fl_asc+fl_dsc 𝕩
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
12cc7af83d
|
fast path for squeeze target determining on sorted input
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
72cdb0d5fb
|
mark reshape_one as ascending & descending
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
4b38a8cf6b
|
no need to unroll ≢x size checking
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
0d238f2b88
|
mark ↕n with fl_squoze
|
2024-10-09 01:48:23 +03:00 |
|
dzaima
|
fc617b6e32
|
don't try sorting sorted arrays
|
2024-10-09 01:16:23 +03:00 |
|
dzaima
|
989970f7fd
|
fix ∾2‿2⥊<0‿0⥊⟨⟩
|
2024-09-22 01:42:26 +03:00 |
|
dzaima
|
4eb632a48d
|
TO_GET helper
|
2024-09-21 21:26:02 +03:00 |
|
dzaima
|
6f7e82e52b
|
include JIT heap in used heap measurements
|
2024-09-21 21:26:02 +03:00 |
|
dzaima
|
5192a1d466
|
fix x⊸≍˘list & ≍⟜x˘list on non-atom x
|
2024-09-16 00:41:17 +03:00 |
|
dzaima
|
51ab5db2c8
|
move interleave_cells to cells.c
|
2024-09-14 16:18:54 +03:00 |
|
dzaima
|
884d61476f
|
fix flags of take_head
|
2024-09-14 16:15:11 +03:00 |
|
dzaima
|
f3c63d3887
|
use reshape_one for c¨
|
2024-09-13 22:11:40 +03:00 |
|
dzaima
|
fff96b9475
|
fix ≍˘ error checking, start of generalizing to join_cells
|
2024-09-13 22:07:35 +03:00 |
|
dzaima
|
215a3cad3b
|
fix interleave_cells generic path
|
2024-09-13 19:39:08 +03:00 |
|
dzaima
|
b7c3815d4a
|
copy fallback instead of slice in take_head
|
2024-09-13 19:10:46 +03:00 |
|
dzaima
|
64adbbf37e
|
in-place ¯n↓ / n↑ / n⥊
|
2024-09-13 17:41:56 +03:00 |
|
dzaima
|
1b13defe54
|
rearrange sfns.c a bit
|
2024-09-12 16:24:32 +03:00 |
|
dzaima
|
8fd897690f
|
move customizeShape into stuff.h
|
2024-09-12 06:47:06 +03:00 |
|