dzaima
|
8ad5132a6d
|
find & eqfn changes, use toI32Any more
|
2023-02-22 13:48:45 +02:00 |
|
Marshall Lochbaum
|
032e32ae1a
|
Fast flat ≡˘ and ≢˘ in most cases
|
2023-02-20 10:43:24 -05:00 |
|
Marshall Lochbaum
|
89e6be10e5
|
Add eqFns to calls.h and use for Find
|
2023-02-20 10:07:44 -05:00 |
|
Marshall Lochbaum
|
fcc5c2e449
|
Slice function instead of take/drop
|
2023-02-19 21:14:42 -05:00 |
|
Marshall Lochbaum
|
ea6c7d9a7a
|
Use a C comparison function instead of a BQN one
|
2023-02-19 21:08:21 -05:00 |
|
Marshall Lochbaum
|
d2950a8df6
|
Flat rank 1 Find implementation using primitive calls
|
2023-02-19 20:34:32 -05:00 |
|
dzaima
|
70fec7eb1e
|
fix •ns.Keys on namespaces with unexported fields
|
2023-02-19 18:30:57 +02:00 |
|
dzaima
|
7013a9edf9
|
•ns.Get, •ns.Has, •ns.Keys
|
2023-02-19 18:02:35 +02:00 |
|
dzaima
|
428064a5c2
|
skip lookup table zero-initialization for x⊐x
|
2023-02-18 23:57:02 +02:00 |
|
dzaima
|
bb36755d67
|
native 𝕨/highrank
|
2023-02-18 21:04:22 +02:00 |
|
dzaima
|
96316f0fe1
|
faster 2↕
|
2023-02-18 19:47:22 +02:00 |
|
dzaima
|
7b57b4ae39
|
explicitly mark code sections where allocations aren't allowed to happen
|
2023-02-18 17:46:55 +02:00 |
|
dzaima
|
c32285dba9
|
Singeli copy from unaligned bitarr
|
2023-02-18 11:52:45 +02:00 |
|
dzaima
|
f76836aedd
|
clean up arithd.c & slightly improve non-Singeli impls
|
2023-02-17 16:43:07 +02:00 |
|
dzaima
|
32142a45d6
|
Widen cells in 𝕨∊𝕩, 𝕨⊐𝕩, 𝕨⊒𝕩
|
2023-02-17 00:27:15 +02:00 |
|
dzaima
|
f700a3e150
|
pad input cells when needed for for ∊𝕩, ⊐𝕩, ⊒𝕩
|
2023-02-13 00:19:50 +02:00 |
|
dzaima
|
855541954f
|
initial bit widen&narrow for ⊏
|
2023-02-10 17:59:22 +02:00 |
|
dzaima
|
23d99d7a24
|
more precise detection of when bit 𝕩 won't use simd for widening path
|
2023-02-04 18:17:21 +02:00 |
|
dzaima
|
f39ca95c58
|
maybe slightly better bit→i8→bit heuristic
the more proper thing is to pad cells to the nearest power-of-two byte size anyway
|
2023-02-04 17:16:01 +02:00 |
|
dzaima
|
be9d0c287e
|
better 𝕨⊏𝕩 with non-power-of-two cell sizes
|
2023-02-04 03:30:05 +02:00 |
|
dzaima
|
d2679da7e8
|
⊏: don't get in an infinite loop of f64 𝕨
|
2023-02-04 03:04:06 +02:00 |
|
dzaima
|
98f6944440
|
unify rank 1 and high-rank ⊏
|
2023-02-03 18:55:19 +02:00 |
|
dzaima
|
a84ca6c5d6
|
strict prototypes
|
2023-02-03 15:33:31 +02:00 |
|
dzaima
|
05c1270344
|
better 𝕨⊏𝕩 with 0=×´≢𝕨
|
2023-02-02 00:40:52 +02:00 |
|
dzaima
|
c38565ab8d
|
whitespace cleanup
|
2023-01-31 00:07:00 +02:00 |
|
dzaima
|
a650051a82
|
don't need an actual function object for eachd_fn / eachm_fn
|
2023-01-28 14:57:04 +02:00 |
|
dzaima
|
4a45a07a2b
|
native ⚇0
|
2023-01-27 22:59:22 +02:00 |
|
dzaima
|
10705823de
|
more squeezing changes in ⊐𝕩 and ⊒𝕩
|
2023-01-27 03:17:20 +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 |
|
dzaima
|
cc5a5752bf
|
add •CompObj to NATIVE_COMPILER
|
2023-01-26 01:53:09 +02:00 |
|
dzaima
|
9abe7506ab
|
native minimal compiler
|
2023-01-26 01:30:10 +02:00 |
|
dzaima
|
e231d36471
|
clean up gcc warnings
|
2023-01-25 17:16:24 +02:00 |
|
dzaima
|
c33cd81e06
|
use native ⁼ in ⍟(-n)
|
2023-01-25 15:30:54 +02:00 |
|
dzaima
|
31bd75630c
|
make f=-DNO_RT functional
|
2023-01-25 15:05:23 +02:00 |
|
dzaima
|
6baa96c1e3
|
NEON squeeze
|
2023-01-25 02:22:53 +02:00 |
|
dzaima
|
88410c02e5
|
prep for NEON squeeze
|
2023-01-24 22:21:38 +02:00 |
|
dzaima
|
7768d6475f
|
various OOM fixes
|
2023-01-23 23:49:27 +02:00 |
|
dzaima
|
b0dbd5c37b
|
fix gcc build
|
2023-01-23 21:57:47 +02:00 |
|
dzaima
|
721dd8889b
|
monadic arith
|
2023-01-23 01:22:40 +02:00 |
|
dzaima
|
b1cace31ac
|
don't make a slice on n⊏list
|
2023-01-22 19:31:11 +02:00 |
|
dzaima
|
afe6707654
|
dyarith NEON support
|
2023-01-22 03:27:41 +02:00 |
|
dzaima
|
d84c04bc63
|
use incBy more
|
2023-01-21 00:09:47 +02:00 |
|
dzaima
|
e4578a345e
|
fix 0‿1⊐"ab"‿"cd" & 0‿1∊˜"ab"‿"cd"
|
2023-01-19 16:04:44 +02:00 |
|
dzaima
|
b43184d629
|
fix 1‿2 +⎉0 1
|
2023-01-19 03:57:13 +02:00 |
|
dzaima
|
5b8ac969db
|
don't unroll on i8arr ↕n
|
2023-01-18 15:41:53 +02:00 |
|
dzaima
|
4945a90ff0
|
valgrind changes
|
2023-01-18 02:05:24 +02:00 |
|
dzaima
|
40383906ec
|
no, neither w nor h are 1, clang
|
2023-01-17 05:17:37 +02:00 |
|
dzaima
|
472e542ebd
|
O(1) ⍉𝕩 when it doesn't reorder elements
|
2023-01-17 04:52:08 +02:00 |
|
dzaima
|
f9eb7f083c
|
unshare shape
|
2023-01-17 04:38:55 +02:00 |
|
dzaima
|
21372a743a
|
allow unsharing slices
|
2023-01-17 04:32:30 +02:00 |
|
dzaima
|
540b37ae6a
|
shape replacement utility
|
2023-01-17 03:47:14 +02:00 |
|
dzaima
|
dd82073c60
|
slightly faster ⍟list handling
|
2023-01-16 18:58:48 +02:00 |
|
dzaima
|
39605c1a98
|
add intrinsic file include for _mm_crc32_u32
|
2023-01-14 00:38:32 +02:00 |
|
dzaima
|
6c88499920
|
consistently check only for whether __BMI2__ is defined
|
2023-01-14 00:33:34 +02:00 |
|
dzaima
|
5b35c0a664
|
keep pext usage for bitarr/bitarr
|
2023-01-13 23:46:48 +02:00 |
|
dzaima
|
41212ab852
|
SLOW_PDEP option
|
2023-01-13 23:23:06 +02:00 |
|
dzaima
|
46f657713c
|
don't rely on bqn_fmt when !FORMATTER or CBQN isn't yet initialized
|
2023-01-09 02:30:29 +02:00 |
|
dzaima
|
86ae984af0
|
more print function renaming
|
2023-01-09 02:17:12 +02:00 |
|
dzaima
|
a9c70d9d72
|
printing method overhaul
|
2023-01-09 01:42:44 +02:00 |
|
dzaima
|
38ec07c34b
|
use getline on Windows for the REPL
|
2023-01-06 18:02:02 +02:00 |
|
actalley
|
815de4fd97
|
Address build errors on llvm-mingw to build bqn.exe with no SH, FFI, or repl support
|
2023-01-05 21:38:30 -06:00 |
|
dzaima
|
7d4677a8ff
|
use COPY_TO instead of a loop in fbytes_c1
& ryu comment changes
|
2022-12-31 20:49:50 +02:00 |
|
dzaima
|
8da9c4e3a5
|
don't fail on •SH under VERIFY_TAIL
|
2022-12-31 20:31:13 +02:00 |
|
dzaima
|
7b3beec621
|
•ParseFloat
|
2022-12-31 20:22:22 +02:00 |
|
dzaima
|
fd38a5b241
|
use Ryu for number formatting
|
2022-12-31 03:19:06 +02:00 |
|
dzaima
|
854acd580d
|
respect !PROPER_FILLS in high-rank ↑
|
2022-12-30 16:16:36 +02:00 |
|
dzaima
|
7ff74d38e8
|
squeeze el_bit transpose result
|
2022-12-30 01:12:24 +02:00 |
|
dzaima
|
faf89abef0
|
fix ⊏˘ generic case
|
2022-12-30 00:21:07 +02:00 |
|
dzaima
|
5a9e5e8e50
|
native baseline high-rank 𝕨⊒𝕩
|
2022-12-30 00:10:03 +02:00 |
|
dzaima
|
ec169b1006
|
remove no longer necessary runtime loads
|
2022-12-29 23:59:44 +02:00 |
|
dzaima
|
83863a64fd
|
fix gcc build
|
2022-12-29 23:46:24 +02:00 |
|
dzaima
|
b903a5d9ce
|
fast num⊑˘simpleArr
|
2022-12-29 23:37:00 +02:00 |
|
dzaima
|
0589d63cc5
|
fast v˙˘arr, fix arr˘arr
|
2022-12-29 23:36:37 +02:00 |
|
dzaima
|
1e3117d65f
|
fast ⥊˘𝕩
|
2022-12-29 22:25:22 +02:00 |
|
dzaima
|
3408db320c
|
fast num↑˘𝕩 & num↓˘𝕩 for 2≤=𝕩
|
2022-12-29 22:20:29 +02:00 |
|
dzaima
|
f6f0c12935
|
fast ⊑˘simpleArr
|
2022-12-29 22:07:38 +02:00 |
|
dzaima
|
a0feda9d8b
|
fast arr˘ x
|
2022-12-29 22:04:06 +02:00 |
|
dzaima
|
47e95171f0
|
faster »˘ & «˘ on matrices, fix 0⊏˘↕3
|
2022-12-29 21:47:52 +02:00 |
|
dzaima
|
897ad8f649
|
clang really wants to special-case csz==1, but that's checked for before
|
2022-12-29 21:47:52 +02:00 |
|
dzaima
|
3f0c34e895
|
fast ≍˘𝕩
|
2022-12-29 21:47:52 +02:00 |
|
dzaima
|
4e88dc1004
|
faster ⊏˘
|
2022-12-29 20:32:17 +02:00 |
|
dzaima
|
41efcfb632
|
fast ∾˝ & 𝕨ScalarFn˝𝕩
|
2022-12-29 18:46:14 +02:00 |
|
dzaima
|
8a132467d2
|
improve EACH_FILLS cases in ¨ & ⌜
|
2022-12-28 22:38:14 +02:00 |
|
dzaima
|
6a9e03bdb1
|
use arr_shSetU/arr_shSetI inline
and use incG more in rank_c2
|
2022-12-28 17:31:02 +02:00 |
|
dzaima
|
a34bb0a433
|
don't unroll libc math loops
|
2022-12-28 16:51:17 +02:00 |
|
dzaima
|
c5a3c57f50
|
check for path being present for •path/•name/•state
|
2022-12-28 01:13:58 +02:00 |
|
dzaima
|
33580b91ca
|
don't error on unknown fill when not overtaking
|
2022-12-27 23:44:34 +02:00 |
|
dzaima
|
f424c720a7
|
full native 𝕨⌽𝕩 & 𝕨⌽⁼𝕩
|
2022-12-27 03:39:48 +02:00 |
|
dzaima
|
75fe558f1c
|
detect writes past the end of a TALLOC allocation
|
2022-12-27 02:29:24 +02:00 |
|
dzaima
|
1afdd89075
|
allow defining custom dyadic inverses of builtins
|
2022-12-26 23:57:55 +02:00 |
|
dzaima
|
013897cc16
|
add runtime calls to WARN_SLOW
|
2022-12-26 23:15:56 +02:00 |
|
dzaima
|
c818bf54b1
|
remove need of libffi from make forbuild
|
2022-12-26 19:38:24 +02:00 |
|
dzaima
|
48c2425e8b
|
check result size being too large in ↑
|
2022-12-26 18:16:11 +02:00 |
|
dzaima
|
7bcee07489
|
initialize shape properly in one case of high-rank take/drop
fixes 0‿4↑↕4 in debug builds, which just magically approximately worked before
|
2022-12-26 16:09:30 +02:00 |
|
dzaima
|
326d54e130
|
native list↑𝕩 & list↓𝕩
|
2022-12-25 13:38:43 +02:00 |
|
dzaima
|
8fad76762a
|
reorder take_c2
|
2022-12-24 17:53:16 +02:00 |
|
dzaima
|
e2b45e33e1
|
simplify splitCells
|
2022-12-24 17:29:48 +02:00 |
|
dzaima
|
424448aa40
|
remove rt_memberOf & rt_indexOf
|
2022-12-24 17:12:35 +02:00 |
|
dzaima
|
95b1beb9db
|
native high-rank ∊ & ⊐
|
2022-12-24 17:08:27 +02:00 |
|
dzaima
|
3f40955d83
|
reorder indexOf_c2
|
2022-12-24 17:05:50 +02:00 |
|
dzaima
|
e3b5af8a44
|
fix 𝕨∊p & p⊐𝕩 with an empty high-rank p
|
2022-12-24 17:03:58 +02:00 |
|
dzaima
|
bb7fe02a45
|
separate checks for x86-64 & NEON Singeli importing
& restrict the processed Singeli files on NEON to the ones supported
|
2022-12-24 15:27:53 +02:00 |
|
dzaima
|
efcc6a28be
|
add •file.path to autocomplete options
|
2022-12-23 18:08:33 +02:00 |
|
dzaima
|
a6b22c75fd
|
fast list⊐unit for more list types
|
2022-12-20 18:32:51 +02:00 |
|
dzaima
|
e69d8dc6e9
|
native ⌾(v⊸⌽)
|
2022-12-20 18:31:42 +02:00 |
|
dzaima
|
43be832a37
|
fix highrank∊list deshaping the result in some scenarios
|
2022-12-18 23:58:10 +02:00 |
|
dzaima
|
8188886538
|
fast 𝔽´⟨x⟩ & 𝔽´⟨x,y⟩
|
2022-12-18 23:49:09 +02:00 |
|
dzaima
|
aa4b92cb01
|
don't define •SH if not available
|
2022-12-18 23:40:55 +02:00 |
|
dzaima
|
29cecb0b6e
|
remove •PrimInd
|
2022-12-18 23:16:36 +02:00 |
|
dzaima
|
6380364e62
|
native highrank∊vector
|
2022-12-18 23:05:58 +02:00 |
|
dzaima
|
09b3279958
|
unified Singeli including mechanism
|
2022-12-18 01:54:07 +02:00 |
|
dzaima
|
2c73199ed4
|
use Singeli-generated function tables for comparison
|
2022-12-16 19:04:58 +02:00 |
|
dzaima
|
0ef8800530
|
native F⌾⊢𝕩 & F⌾⊣𝕩
|
2022-12-08 13:26:04 +02:00 |
|
dzaima
|
af978bbc91
|
cave in and initialize variables in gcc
|
2022-12-03 23:58:33 +02:00 |
|
dzaima
|
6ca5050f4d
|
reduce gcc warnings
|
2022-12-03 23:56:03 +02:00 |
|
dzaima
|
63e5e843ba
|
fix f64arr/𝕩
`slow:` uses `s`, but the goto went to it before `s` was initialized
|
2022-12-03 23:18:43 +02:00 |
|
dzaima
|
7c6676a492
|
copy over custom _mm_loadu_si32 for old gcc
|
2022-12-01 13:37:01 +02:00 |
|
Marshall Lochbaum
|
4077596b89
|
Sparse initialization for ⌾(i⊸⊏) byte table
|
2022-11-30 16:32:06 -05:00 |
|
Marshall Lochbaum
|
d7a06befb5
|
Select implementation comments
|
2022-11-30 16:32:06 -05:00 |
|
Marshall Lochbaum
|
534c92f38a
|
Select from <=128 booleans with shuffles
|
2022-11-29 22:14:57 -05:00 |
|
Marshall Lochbaum
|
c17448ed71
|
Faster bit selection
|
2022-11-29 11:29:25 -05:00 |
|
Marshall Lochbaum
|
7cb8cf5772
|
Enable selection with AVX2 gather for i8 to i32 indices and 1- to 8-byte values
|
2022-11-27 09:18:21 -05:00 |
|
dzaima
|
dbc7c83f70
|
move usum to fold.c
but don't do anything useful with that because usum needs to also check for negative numbers
|
2022-11-27 15:45:33 +02:00 |
|
Marshall Lochbaum
|
d911eafd31
|
Inverses for •math.Fact and •math.LogFact
|
2022-11-26 14:20:52 -05:00 |
|
Marshall Lochbaum
|
a3df482acd
|
Use non-inlined recursion for •math functions
|
2022-11-26 14:14:37 -05:00 |
|
dzaima
|
d383fe57a7
|
clean up whitespace
|
2022-11-24 01:26:35 +02:00 |
|
Marshall Lochbaum
|
7715cbc158
|
Add •math.Sum with Singeli f64 implementation
|
2022-11-23 16:51:30 -05:00 |
|
Marshall Lochbaum
|
35aef1e5cd
|
•math.Erf, •math.ErfC, and •math.LogFact
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
9a1268ea3a
|
Simplify •math.Comb implementation
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
6eb21bd68c
|
Factorial and combinations functions
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
f6109b3985
|
Handle no-op and boolean cases of monadic arithmetic quickly
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
58cd6f0f4e
|
Other useful math: log2 log10 log1p expm1 hypot
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
a0f6986832
|
Hyperbolic trig
|
2022-11-23 16:46:39 -05:00 |
|
Marshall Lochbaum
|
51840bc853
|
•math.GCD and •math.LCM for u64 arguments
|
2022-11-23 16:46:39 -05:00 |
|
dzaima
|
6f5c329e22
|
noinline float product
|
2022-11-22 14:24:43 +02:00 |
|
dzaima
|
e7cc8ec444
|
use o2fG instead of union field
|
2022-11-21 23:26:25 +02:00 |
|
Marshall Lochbaum
|
31106c730c
|
Fold implementation comments
|
2022-11-21 15:56:15 -05:00 |
|
Marshall Lochbaum
|
bda653e865
|
Shortcutting for boolean-valued integer ∨´
|
2022-11-21 15:51:03 -05:00 |
|
Marshall Lochbaum
|
f1ca8793e3
|
Boolean comparison folds, monadic only
|
2022-11-21 15:36:06 -05:00 |
|
Marshall Lochbaum
|
47392acc33
|
Implement ×´ for all numeric cases, using f64 product when i32 fails
|
2022-11-21 15:19:27 -05:00 |
|
Marshall Lochbaum
|
52608ba6ce
|
Singeli min/max-fold
|
2022-11-21 11:47:50 -05:00 |
|
Marshall Lochbaum
|
4b9a21c75f
|
Do tack-fold with selection
|
2022-11-21 08:07:38 -05:00 |
|
Marshall Lochbaum
|
38683119c0
|
Handle some f64 cases in dyadic fold
|
2022-11-20 22:03:36 -05:00 |
|
Marshall Lochbaum
|
c977065c20
|
Move +⌈⌊ folds to function tables, unifying monadic and dyadic cases
|
2022-11-20 21:51:30 -05:00 |
|
Marshall Lochbaum
|
ebfd002793
|
Blocked +´ and f64 ⌈´ ⌊´
|
2022-11-20 21:06:05 -05:00 |
|
Marshall Lochbaum
|
5bfdc26d00
|
Move fold to its own file
|
2022-11-20 20:06:35 -05:00 |
|
Marshall Lochbaum
|
b9a3a7886d
|
Ordering function implementation comments
|
2022-11-20 19:57:00 -05:00 |
|
dzaima
|
24195780df
|
reorder headers to allow OpenBSD hack to function
|
2022-11-20 18:22:51 +02:00 |
|
dzaima
|
6ff521b200
|
don't use IA/SH macros for assigning
|
2022-11-18 15:07:31 +02:00 |
|
dzaima
|
9018051ce3
|
add •math.Atan2 autocomplete
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
bd6035cdef
|
more system namespace field completion, actually add •ToUTF8
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
983452b409
|
system value completion
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
94f8b189f7
|
REINIT_TAIL → FINISH_OVERALLOC
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
55e8a43297
|
fix test/mut.bqn leaking references
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
1ac5f0a49d
|
arr_shCopy that doesn't compare IA
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
179e0a37dc
|
more tail verify work
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
e5a9c7536d
|
array tail overwriting checker
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
da1062c81c
|
remove unused #undef
|
2022-11-17 18:55:59 +02:00 |
|
dzaima
|
db89e7a4bb
|
fix function signatures & M1C2; use C1 & bit_negate more
|
2022-11-17 17:52:19 +02:00 |
|
Marshall Lochbaum
|
be9037cb62
|
Squeeze for ∨` instead of scalar checking for bool
|
2022-11-17 08:32:29 -05:00 |
|
Marshall Lochbaum
|
5985e92834
|
Initialized min/max-scan
|
2022-11-17 07:59:00 -05:00 |
|
Marshall Lochbaum
|
98d066c343
|
Use scan_max_num for sorted ⊒
|
2022-11-16 21:20:54 -05:00 |
|
Marshall Lochbaum
|
1924aee61c
|
f64 min/max scan
|
2022-11-16 21:14:32 -05:00 |
|
Marshall Lochbaum
|
136c1afacc
|
Macro-ize integer min/max scan and add sorted flag
|
2022-11-16 20:49:57 -05:00 |
|
Marshall Lochbaum
|
ac7ff155d4
|
Pull out scan_add_bool() utility function from scan_c1()
|
2022-11-16 20:16:33 -05:00 |
|
Marshall Lochbaum
|
d6029985e8
|
Move scan to its own file
|
2022-11-16 19:48:37 -05:00 |
|
Marshall Lochbaum
|
93ef4bb2a9
|
Direct ⍷bool implementation
|
2022-11-15 22:03:50 -05:00 |
|
Marshall Lochbaum
|
f1142b4184
|
Branchless ⊒bool, moderately faster
|
2022-11-15 18:27:54 -05:00 |
|
Marshall Lochbaum
|
d6b09adb57
|
Add primitive and primitive-1modifier call macros to calls.h
|
2022-11-15 16:08:34 -05:00 |
|
Marshall Lochbaum
|
4506caf3ac
|
Faster self-search on sorted 𝕩 using »⊸≠𝕩
|
2022-11-15 16:08:17 -05:00 |
|
Marshall Lochbaum
|
856eabd493
|
Self-search implementation comments
|
2022-11-14 21:08:44 -05:00 |
|
dzaima
|
a9737c22ea
|
extract bit array negation to function
|
2022-11-14 19:47:53 +02:00 |
|
dzaima
|
7e934b04db
|
better negation buffer handling
|
2022-11-14 19:02:44 +02:00 |
|
dzaima
|
63a2791361
|
add some NOUNROLLs
|
2022-11-14 18:00:00 +02:00 |
|
Marshall Lochbaum
|
85f54b2b25
|
Check for a small return type in large-range /⁼ with a sparse table
|
2022-11-13 18:00:10 -05:00 |
|
Marshall Lochbaum
|
cd16c8a1c7
|
Blocked 4-byte ⍋bool and ⍒bool with Singeli
|
2022-11-13 18:00:10 -05:00 |
|
Marshall Lochbaum
|
1647e98fd2
|
Use Singeli code for ⍋bool and ⍒bool with 1- and 2-byte result
|
2022-11-13 18:00:10 -05:00 |
|
Marshall Lochbaum
|
6bea10de21
|
Implementation comments and minor refactoring for /⁼
|
2022-11-13 18:00:10 -05:00 |
|
Marshall Lochbaum
|
7acd9d5688
|
Indices/Replicate implementation comments
|
2022-11-13 18:00:10 -05:00 |
|
dzaima
|
b244d7ecf5
|
disallow bitwise hashing for ¯0; prepare for mm_alloc taking u64 size
|
2022-11-12 23:45:39 +02:00 |
|
Marshall Lochbaum
|
7d56d61235
|
Hash table for Occurrence Count (⊒)
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
1be4f4c2e7
|
Fix value movement when resizing Classify (⊐) hash
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
62867f4533
|
Make brute-force Mark Firsts store result in a register (always <64 elements)
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
8560ce0f4d
|
Move hash table initializers to functions to save some binary space
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
9adfb13355
|
Extend Mark Firsts hash table to handle Classify
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
37d7694c52
|
64-bit Mark Firsts (∊) hash table
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
dc7389a660
|
Mark Firsts hash table resizing policy tweaks
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
2e1b64e0ca
|
Resizable hash table for Mark Firsts (∊)
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
8a551ab5ce
|
Add 32-bit hash table for Classify (⊒)
|
2022-11-12 15:47:59 -05:00 |
|
Marshall Lochbaum
|
d8e4e7d96f
|
Unify small-type and small-range tables for Classify (⊐)
|
2022-11-12 15:47:59 -05:00 |
|
dzaima
|
a7daeea6d9
|
fix (500⥊¯1‿5) ⊔ 500‿1‿3⥊3
|
2022-11-12 19:20:34 +02:00 |
|
Marshall Lochbaum
|
beb997ccb9
|
Avoid data movement for empty cells in Group 𝕩
|
2022-11-12 07:25:41 -05:00 |
|
dzaima
|
a1e12106ce
|
use FILL_TO for more compact edge-case handling
|
2022-11-12 13:45:52 +02:00 |
|
dzaima
|
1241da4d74
|
fix group of array with empty cells
|
2022-11-12 13:41:45 +02:00 |
|
dzaima
|
eb880d7135
|
set result fill fill immediately instead of delaying to before return
|
2022-11-12 13:30:35 +02:00 |
|
Marshall Lochbaum
|
d2cdae4962
|
Fast case for bool⊔𝕩 using compress
|
2022-11-10 21:22:29 -05:00 |
|
Marshall Lochbaum
|
a3da018055
|
Group code for 1-bit cells
|
2022-11-10 14:52:45 -05:00 |
|
Marshall Lochbaum
|
6eb504118e
|
Split out optimized Group cases and add comments
|
2022-11-10 14:52:45 -05:00 |
|
Marshall Lochbaum
|
801472d6d4
|
Implement bit_cpy versions of the Group methods that use memcpy
|
2022-11-10 14:52:45 -05:00 |
|