dzaima
|
3f0e696add
|
move bit_reverse to stuff.h
+ explicitly note its operating width
|
2025-05-31 19:04:12 +03:00 |
|
dzaima
|
433d20fc61
|
validate fill in debug builds
|
2025-05-31 19:03:50 +03:00 |
|
dzaima
|
e2e73a5987
|
always define DEBUG to 1 or 0
|
2025-05-31 19:03:50 +03:00 |
|
dzaima
|
f843c7e96d
|
proper name
|
2025-05-30 06:44:58 +03:00 |
|
dzaima
|
c203ed2b91
|
update slash.singeli to use more helpers
also makes the [16]i8-shuffle-based method on T==i8 load only 8 bytes, instead of an unnecessary 16
|
2025-05-30 06:22:22 +03:00 |
|
dzaima
|
13a64e4f56
|
AVX-512 masked_mov & compress
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
bbc47cd81e
|
AVX-512 lowelt_mask
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
d048cf66fa
|
implement AVX-512 mask reinterprets via hom_to_int & int_to_mask
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
ac2dcb711b
|
use intrinsic name generators more
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
1d3413f6ea
|
full vector broadcasting via broadcast{[k*n]E, v:[k]E}
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
b1e561d7ed
|
more explicit broadcast{[k]E, val} definition
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
309fc75d9f
|
more helpers for x86 intrinsics
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
f274f58dc4
|
explicitly check non-512 vector length in x86_has512
|
2025-05-30 06:16:13 +03:00 |
|
dzaima
|
94cdc28ea9
|
hom_ones
|
2025-05-30 06:04:56 +03:00 |
|
dzaima
|
6f03371e3b
|
get rid of most custom sel{…} defs
|
2025-05-30 06:04:56 +03:00 |
|
dzaima
|
4e12204c52
|
make arch_defvw a generator
|
2025-05-30 05:59:28 +03:00 |
|
dzaima
|
624c74058c
|
improve pure function detection
|
2025-05-30 02:17:40 +03:00 |
|
dzaima
|
5c2ac27410
|
modernize tests
also remove leftover tests that don't pass with EACH_FILLS
|
2025-05-30 01:52:31 +03:00 |
|
dzaima
|
c0cb1a9f77
|
more 𝕨⥊𝕩 refactoring
|
2025-05-29 23:41:55 +03:00 |
|
dzaima
|
dd7c21ed86
|
extract cycling reshape implementation from shape_c2
currently somewhat-inefficient, but separating out for reference, to allow the moving commit to largely not change anything
|
2025-05-29 23:25:14 +03:00 |
|
dzaima
|
d0ab742313
|
extract 1≥≠𝕨 case of 𝕨⥊𝕩
temporarily calling back into shape_c2 when necessary
|
2025-05-29 23:25:14 +03:00 |
|
dzaima
|
056cfd8367
|
extract m_barrp_fill, make m_arrp_fill actually set fill
conditions were the wrong way around :|
|
2025-05-29 23:25:14 +03:00 |
|
dzaima
|
541e5a805e
|
𝕨⥊𝕩 implementation refactoring & testing
|
2025-05-29 22:36:38 +03:00 |
|
dzaima
|
4e0957f668
|
clarify message on failing to compute expected result
|
2025-05-29 02:47:42 +03:00 |
|
dzaima
|
1a2cba2305
|
fix eqvar fail report
|
2025-05-29 02:47:39 +03:00 |
|
dzaima
|
860594ae48
|
expose RANDOMIZE_HEURISTICS config in •internal.Temp
|
2025-05-28 07:49:41 +03:00 |
|
dzaima
|
59923b25df
|
refactor •internal.Temp
|
2025-05-28 06:55:53 +03:00 |
|
dzaima
|
879a3e2007
|
fix 𝕨⥊𝕩 integer overflow
|
2025-05-28 06:41:49 +03:00 |
|
dzaima
|
054cdac6d9
|
use unpack_unit helper
|
2025-05-28 04:31:16 +03:00 |
|
dzaima
|
45a756a6a0
|
fix reference leak on heapAllocatedAtom⊸»˘0‿2⥊0
caught by test/cells.bqn
|
2025-05-28 04:22:20 +03:00 |
|
dzaima
|
107f5a7ee5
|
atom⊸«⎉k can only legally do k==1
noticed by test/cells.bqn
|
2025-05-28 04:05:30 +03:00 |
|
dzaima
|
d8ec8a3a70
|
actually fast-path (<atom)⊸«⎉1
|
2025-05-28 04:02:27 +03:00 |
|
dzaima
|
13068480ca
|
pick_sells handles rank 1
noticed by test/cells.bqn
|
2025-05-28 03:48:58 +03:00 |
|
dzaima
|
ac2f1e276c
|
test 𝕗⌾(is⊸⊏)charmat
|
2025-05-28 03:23:23 +03:00 |
|
dzaima
|
09936204d0
|
fix withFill being passed object with incomplete shape
caught by fuzz.bqn
|
2025-05-28 03:12:45 +03:00 |
|
dzaima
|
2adb0a3586
|
--disable-jit flag
will be less efficient than if compiled with -DJIT_ENABLED=0, but better than nothing
|
2025-05-28 02:13:22 +03:00 |
|
dzaima
|
0f5e3c354d
|
fix false-positive in heuristic randomization of 0 ∨ "Af64"•internal.Variation ↕0
caught by fuzz.bqn
|
2025-05-28 02:01:00 +03:00 |
|
dzaima
|
32b37188d3
|
fix arr_bptr==NULL path of isSorted
isSorted doesn't consume x, but TO_BPTR mutates it
|
2025-05-28 00:56:29 +03:00 |
|
dzaima
|
e2c12d0ade
|
avoid needing to mutate LV for eqvar tests
|
2025-05-28 00:46:04 +03:00 |
|
dzaima
|
368fe11155
|
fix heuristic bounds of select_rows_direct
inds_buf has limited size; failed fuzz/select-cells
|
2025-05-28 00:38:57 +03:00 |
|
dzaima
|
46c2578c73
|
•internal.Indistinguishable-based _eqvar
|
2025-05-28 00:25:27 +03:00 |
|
dzaima
|
650c5b9171
|
quiet warning
|
2025-05-28 00:23:29 +03:00 |
|
dzaima
|
c050df28d3
|
fix fill of ≍˘˜fillarrList
testing will come later with •internal.Indistinguishable _eqvar
|
2025-05-28 00:23:29 +03:00 |
|
dzaima
|
8a69998839
|
proper fill for 0⊸⊏˘fillarr
testing will come later with •internal.Indistinguishable _eqvar
|
2025-05-28 00:23:29 +03:00 |
|
dzaima
|
c866309707
|
fix fill of bitarr⊏𝕩 when 𝕩 has no fill and starts with elements that can construct a typed array
|
2025-05-27 21:59:07 +03:00 |
|
dzaima
|
8626fb14ce
|
cleanup from gcc -Wextra
|
2025-05-27 21:59:07 +03:00 |
|
dzaima
|
2fc61ac9f7
|
better inds⊏highrankTyped loops
|
2025-05-27 21:59:07 +03:00 |
|
dzaima
|
23648c7855
|
fix inds⊸⊏˘fillarr result fill
|
2025-05-27 21:59:07 +03:00 |
|
dzaima
|
b49d4bcd86
|
move 𝔽⌾(a⊸/)𝕩 impl to toEltypeArrX
testing will come later with •internal.Indistinguishable _eqvar (fill changed)
|
2025-05-27 01:39:20 +03:00 |
|
dzaima
|
5e06dea15f
|
optimize WRAP
|
2025-05-26 23:45:20 +03:00 |
|