Marshall Lochbaum
6cc9d40490
Fast cases for short •rand.Deal𝕩
2023-05-04 09:10:29 -04:00
Marshall Lochbaum
8191aa6da2
Only iterate over set bits in random merge
2023-05-04 09:10:29 -04:00
Marshall Lochbaum
bc7275a91b
Basic MergeShuffle implementation (slow merge)
2023-05-04 09:10:29 -04:00
dzaima
1bd9467a2d
cleanup
2023-05-04 12:27:13 +03:00
dzaima
352961a7eb
another ubsan complaint
2023-05-02 10:47:13 +03:00
dzaima
65e246774e
-mllvm --x86-cmov-converter=0
2023-04-30 20:03:09 +03:00
dzaima
0e79e9f868
fix ubsan notes
2023-04-30 19:50:24 +03:00
dzaima
cd40ec8117
fix ¯2e9‿2e9⍋0
2023-04-30 19:35:18 +03:00
dzaima
c567dff565
fix leading-axis operations on empty inputs
2023-04-30 19:15:46 +03:00
dzaima
93dd25e0e1
fast leading-axis for <>≤≥=≠
2023-04-30 19:00:56 +03:00
dzaima
c889a07d75
replicate-using leading axis arithmetic case
2023-04-30 18:46:41 +03:00
dzaima
1e11cf93c1
faster leading axis arithmetic
2023-04-30 17:27:07 +03:00
dzaima
048352f587
fix 0˝˘ 2‿2⥊0
2023-04-29 21:15:46 +03:00
dzaima
0a30c7b4e6
more generic n⊸↑⎉k & n⊸↓⎉k & n⊸⍉⎉k
2023-04-29 21:10:44 +03:00
dzaima
aae8651e8b
fix Arith⌜ with empty 𝕨
2023-04-29 20:11:24 +03:00
dzaima
518635d0b9
generic 𝕨 ≡⎉¯k 𝕩
2023-04-29 20:01:48 +03:00
dzaima
df613ad674
w⊸F⎉g x → w F⎉∞‿g x & F⟜x⎉g w → w F⎉g‿∞ x
2023-04-29 17:39:13 +03:00
dzaima
35786d4f5b
m_hVec\d → m_hvec\d
2023-04-29 17:39:13 +03:00
dzaima
e200bbc5f9
move ↕list to its own function
2023-04-29 17:39:13 +03:00
dzaima
bb7c37960e
a round of more incG/incByG
2023-04-29 17:39:13 +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
aa5ed7cc7a
BB2B & BBB2B → FC1 & FC2
2023-04-29 15:31:31 +03:00
dzaima
ca13fb567a
header file cleanup
2023-04-29 13:54:32 +03:00
dzaima
ba1b853936
don't use the cell appender for Arith⌜
2023-04-29 13:13:58 +03:00
dzaima
62e2ea96ce
zsh needs to be kept alive even for zk==1
2023-04-28 21:04:30 +03:00
dzaima
7f0390be3f
more error messages
2023-04-28 20:49:34 +03:00
dzaima
7dd677a4e2
various fill improvements
2023-04-28 20:31:44 +03:00
dzaima
7a501ffbdf
use APD for ∾list
2023-04-28 20:17:44 +03:00
dzaima
5aa896ab38
use APD for Arith⌜
2023-04-28 19:30:54 +03:00
dzaima
b17d2010c2
better error messages
2023-04-28 19:25:42 +03:00
dzaima
38b2028374
use APD for ˘/⎉
2023-04-28 19:25:42 +03:00
dzaima
d43ffd6b62
remove no longer needed E_SLICES
2023-04-25 22:13:41 +03:00
dzaima
037d36ddab
rework for_cells_AA
2023-04-25 22:13:13 +03:00
dzaima
23737cc458
proper error messages for ⎉ vs ˘
2023-04-24 19:43:04 +03:00
dzaima
77154be2a8
testing setup for ˘ & ⎉
...
incl. toggleable fill testing for !CATCH_ERRORS
2023-04-24 19:43:04 +03:00
dzaima
6d33018788
merge dyadic ˘ & ⎉
2023-04-24 19:43:04 +03:00
dzaima
e11d5dd31d
•internal.HasFill
2023-04-24 19:43:04 +03:00
dzaima
2259e7b6a9
fix ↕1‿0‿1e9‿1e9‿1e9 incorrectly erroring
2023-04-23 22:17:32 +03:00
dzaima
9d9c3fe8ac
return signal code+128 in exit code on signaling •SH invocation
2023-04-23 22:17:32 +03:00
dzaima
c50674d63a
always overallocate by 4 bytes in 32-bit output case for /bitarr
2023-04-23 15:11:58 +03:00
dzaima
10edc75f09
use c1fn for monadic ˘/⎉
2023-04-22 22:33:32 +03:00
dzaima
6d5cee1cdc
extract one-call case to noinline function
2023-04-22 22:33:32 +03:00
dzaima
5395d1eb08
cleanup
2023-04-22 19:10:58 +03:00
dzaima
36b99d3505
handle more cases of ⊏⎉n & ⊑⎉n
2023-04-22 18:44:21 +03:00
dzaima
fe071b641f
handle more cases of ⍉⎉n & «⎉n & »⎉n
2023-04-22 18:44:21 +03:00
dzaima
1c041fd968
move emptiness checks to where needed
2023-04-22 18:34:29 +03:00
dzaima
e4d38f571d
move k==0 case out of for_cells_c1
2023-04-22 18:34:25 +03:00
dzaima
edf1f2df7e
merge_fill_result changes
...
incl. fixing when rr==k
2023-04-22 18:34:18 +03:00
dzaima
78764ec47c
move SLICE source refcount incrementing outside of loop
2023-04-22 18:33:39 +03:00
dzaima
b10a87fe00
merge ˘ & ⎉
2023-04-22 18:31:29 +03:00
dzaima
1ffc141919
move toCells & toKCells to cells.c
2023-04-22 18:31:24 +03:00
dzaima
1de59d6ee8
reorder functions
2023-04-22 17:20:05 +03:00
dzaima
663fe29a89
move monadic ⎉ to slice macros
2023-04-22 17:20:05 +03:00
dzaima
078ee7af97
use c2fn in insert_base
2023-04-22 17:20:05 +03:00
dzaima
d2ac5db1c8
move ⎉ & ˘ to their own file
2023-04-22 17:20:05 +03:00
dzaima
e0479adee4
fix rank overflow check in 𝕨⥊𝕩
2023-04-22 11:53:54 +03:00
Marshall Lochbaum
b6590b0eab
Move Insert implementation to fold.c, except the generic case
2023-04-21 22:00:08 +03:00
dzaima
6d7b679234
fast path for comparing equal-pointer typed arrays
2023-04-21 17:57:58 +03:00
dzaima
58ac287ef6
handle array-atom comparison separately from array-array
2023-04-21 17:55:38 +03:00
dzaima
c3347d6815
move f32 to h.h, add reinterpreting helper methods
2023-04-21 16:32:35 +03:00
dzaima
d127059de8
more gcc complaints
2023-04-21 13:48:24 +03:00
dzaima
01d64e4112
gcc complains about this now for whatever reason
2023-04-19 22:48:24 +03:00
dzaima
e45bd78f25
fix comparison of empty high-rank arrays
2023-04-19 22:42:28 +03:00
dzaima
d13f3fad94
fix ∧𝕩 & ∨𝕩 on high-rank zero-cell input
2023-04-19 21:52:38 +03:00
dzaima
c57e0ba135
more fixes for overflow checking
2023-04-17 13:07:50 +03:00
dzaima
c2754e0fff
don't OOM in 𝕨↑𝕩 with 0≡×´𝕨 if product of prefix overflows
2023-04-17 12:53:02 +03:00
dzaima
a2d27c69be
make √, ⋆, •math.Atan2 behave as if ¯0 was 0
2023-04-14 21:22:18 +03:00
dzaima
51e34c55d3
make division not care about sign of 𝕩
2023-04-14 20:24:36 +03:00
dzaima
55da9e99d6
reorganize equality checks more
2023-04-14 20:06:36 +03:00
dzaima
f001841d17
move comparison functions to separate file
2023-04-14 18:11:49 +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
1c8916949e
fix ⊏ with odd shape 𝕩 & depth 2 𝕨
2023-04-14 00:14:57 +03:00
dzaima
68c3ba3aa0
fix leak in dyadic Insert with an empty argument
2023-04-14 00:05:39 +03:00
dzaima
4d3db9ca0b
fix ∊ & ⊐ being broken on one c8 & one c16 argument
2023-04-14 00:05:23 +03:00
dzaima
44ce033e73
fix leak in dyadic scan with an empty argument
2023-04-14 00:05:23 +03:00
dzaima
102a696164
fix ⟨2⟩↕a
2023-04-13 22:22:50 +03:00
dzaima
9951f20751
clean up some error messages
2023-04-08 22:12:15 +03:00
dzaima
52dc05f228
SIMD +`
2023-04-08 20:04:23 +03:00
dzaima
c3fe3c5b42
more Singeli utilities, more Scan fixing
2023-04-07 21:09:46 +03:00
dzaima
3a7bce3aab
a bunch of Scan fixes & improvements
2023-04-07 20:41:34 +03:00
dzaima
897c46df76
aarch64 fold.singeli
2023-04-06 20:17:09 +03:00
dzaima
b3f3190028
SSE2 fold.singeli
2023-04-06 19:49:14 +03:00
Marshall Lochbaum
9d7d330a03
Use AVX2 counting for 1-byte counting sort
2023-04-06 11:32:34 -04:00
Marshall Lochbaum
0e5b98c491
Return max from AVX2 counting function
2023-04-06 11:32:34 -04:00
Marshall Lochbaum
b655dd4771
AVX2 counting function for small-range 1-byte /⁼
2023-04-06 11:32:04 -04:00
dzaima
a0cdcdc898
fix self-search radix-based cases with 64-bit usz
2023-04-06 17:51:58 +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
0aca470931
more explicit inline requiring
2023-04-06 13:12:11 +03:00
dzaima
5a2b755191
move non-AVX2 x86-64 into SINGELI_SIMD
2023-04-02 15:55:49 +03:00
dzaima
00a5ddcb89
SSE2 squeeze
2023-04-02 15:04:00 +03:00
dzaima
96ee73f644
enable Singeli monadic arith & comparisons on SSE2
2023-04-01 20:40:29 +03:00
dzaima
3a45eac1aa
separate SSE2, implement SSE2 dyarith & bitsel
...
also separate maskstore to homogeneous & top bit mask variants, and make blend require equal element widths
2023-04-01 20:40:23 +03:00
dzaima
13eebb1759
move all singeli builds to build.bqn, add has=
...
also:
include commit-based version by default for build/build
expand things included in --version
don't require Singeli for BMI2 usage in bitarr/bitarr
2023-03-31 19:15:23 +03:00
dzaima
dc2ac37e0a
arch-independent Singeli builds
2023-03-31 16:45:29 +03:00
dzaima
0180a54207
quiet gcc warning
2023-03-31 16:34:08 +03:00
dzaima
c513724fd4
hide clangd warning
...
and remove whitespace which was previously used for alignment
2023-03-31 14:27:43 +03:00
dzaima
baa1281efe
don't assume select returns refcount 1 array
...
that probably would be a safe assumption right now, but who knows about the future; cpyWithShape should return back its argument directly if it already has refcount 1 anyway
2023-03-31 14:14:13 +03:00