dzaima
|
d05621f8f4
|
generic vector width calculation for NEON-supported files
|
2022-12-20 00:02:46 +02:00 |
|
dzaima
|
b91e72567d
|
update Singeli submodule, conditional NEON includes
|
2022-12-19 23:31:44 +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
|
30a6de0a31
|
add unrolling to aarch64 cmp.singeli
|
2022-12-18 22:45:42 +02:00 |
|
dzaima
|
f9c919d5ce
|
getmask → homMask/topMask
|
2022-12-18 22:27:42 +02:00 |
|
dzaima
|
a07b94b889
|
more general equal.singeli, remove trailing semicolons
|
2022-12-18 21:55:20 +02:00 |
|
dzaima
|
2a32f52f8d
|
blend renaming
|
2022-12-18 02:49:42 +02:00 |
|
dzaima
|
09b3279958
|
unified Singeli including mechanism
|
2022-12-18 01:54:07 +02:00 |
|
dzaima
|
9768526ddc
|
move last bit of equal.singeli to loadBatch
|
2022-12-18 01:53:56 +02:00 |
|
dzaima
|
40f36fa366
|
Singeli-generated table for bits.singeli
|
2022-12-17 17:51:56 +02:00 |
|
dzaima
|
2c73199ed4
|
use Singeli-generated function tables for comparison
|
2022-12-16 19:04:58 +02:00 |
|
dzaima
|
f49dd5e8cf
|
move cmp.singeli NaN check outside for non-x86_64
|
2022-12-16 17:39:51 +02:00 |
|
dzaima
|
6e3cb9a425
|
andIsZero→andAllZero; NEON andnz, blendF, sel, bitops.singeli
|
2022-12-16 00:44:32 +02:00 |
|
dzaima
|
cbd891b768
|
NEON widen, narrow, undefPromote; make undefPromote more restrictive
|
2022-12-15 23:19:00 +02:00 |
|
dzaima
|
6fac426f90
|
add v_dbl & v_half, NEON half{x,n}
|
2022-12-15 21:57:34 +02:00 |
|
dzaima
|
791e7d122f
|
ucvt→narrow
|
2022-12-15 21:44:48 +02:00 |
|
dzaima
|
2b7291dbfb
|
cvt{E,T,v} → widen{T,to_el{E,v}}
|
2022-12-15 20:31:00 +02:00 |
|
dzaima
|
9a9fade18a
|
NEON loadLow, storeLow, andIsZero, maskstore, pack
|
2022-12-15 16:14:00 +02:00 |
|
dzaima
|
6f2d6bfb0b
|
remove offset argument from maskstore; don't use w256 in mask.singeli
|
2022-12-15 16:13:45 +02:00 |
|
dzaima
|
77edc734e8
|
move storeLow & loadLow to sse3 & avx; fix NEON __not
|
2022-12-15 00:39:44 +02:00 |
|
dzaima
|
9fea5f1e13
|
neg(Any|All) → top(Any|All), msk(Any|All) → hom(Any|All)
|
2022-12-13 21:46:50 +02:00 |
|
dzaima
|
336da996b3
|
any/all vector check renaming
|
2022-12-13 02:03:17 +02:00 |
|
dzaima
|
7e13bf7f45
|
more neon.singeli
|
2022-12-12 02:59:11 +02:00 |
|
dzaima
|
444268f051
|
width{eltype{T}} → elwidth{T}
|
2022-12-12 00:07:50 +02:00 |
|
dzaima
|
2a1611ac81
|
start of neon.singeli
|
2022-12-11 23:59:07 +02:00 |
|
dzaima
|
0ef8800530
|
native F⌾⊢𝕩 & F⌾⊣𝕩
|
2022-12-08 13:26:04 +02:00 |
|
dzaima
|
3a3f213a92
|
assign broadcast{T,v} to T**v
|
2022-12-07 23:53:19 +02:00 |
|
dzaima
|
ce45d487a3
|
use mutating assignment
|
2022-12-07 23:24:26 +02:00 |
|
dzaima
|
07d4567a52
|
use spread arguments
|
2022-12-07 23:10:17 +02:00 |
|
dzaima
|
bf71fdb4f8
|
singeli now formats generators itself
or, well, has for a long time
|
2022-12-07 22:41:17 +02:00 |
|
dzaima
|
1b88c4cc62
|
don't allocate twice the memory requested
|
2022-12-07 22:22:34 +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
|
e4f4864ed2
|
define CBQN_EXPORT by default, add macro test for exactly gcc
|
2022-12-03 23:19:24 +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
|
5d61785912
|
some more x86_64.h reordering
|
2022-12-03 22:54:49 +02:00 |
|
dzaima
|
21984e1700
|
more x86_64.h cleanup
|
2022-12-03 15:21:05 +02:00 |
|
dzaima
|
95f9e781fa
|
fix )profiler output merging all REPL entries
|
2022-12-03 14:14:32 +02:00 |
|
dzaima
|
732d1fdb34
|
remove ASMI/macro indirection
|
2022-12-02 17:26:10 +02:00 |
|
dzaima
|
bca0efb46c
|
clean up x86_64.h
|
2022-12-02 17:10:04 +02:00 |
|
dzaima
|
0023e46ab8
|
config file & light theme
|
2022-12-02 16:49:49 +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
|
fdfeb67e8f
|
2-register permutevar8x32
|
2022-11-29 20:27:45 -05:00 |
|
Marshall Lochbaum
|
41f464795f
|
Selection with permutevar8x32
|
2022-11-29 18:45:22 -05:00 |
|
Marshall Lochbaum
|
c17448ed71
|
Faster bit selection
|
2022-11-29 11:29:25 -05:00 |
|
Marshall Lochbaum
|
dc6e49b289
|
Shuffle selection using >1 data register
|
2022-11-28 21:51:36 -05:00 |
|
Marshall Lochbaum
|
b651ca73d3
|
Move base{} utility to base.singeli
|
2022-11-28 13:55:19 -05:00 |
|
Marshall Lochbaum
|
43fba7cd78
|
Extend shuffle selection to >1 byte data
|
2022-11-28 13:55:19 -05:00 |
|
Marshall Lochbaum
|
6639c17b81
|
1-byte select with <=16 elements using shuffle
|
2022-11-27 21:03:58 -05:00 |
|
Marshall Lochbaum
|
e09d555eba
|
Refactoring and renaming in select.singeli
|
2022-11-27 09:18:21 -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 |
|
dzaima
|
afe6c0eba9
|
use 1•internal.Info for rtverify fails
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
c0e06833c0
|
move B squeeze non-integer case out of twice-generated generator
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
b0fcc017ce
|
clean up squeeze.singeli
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
0f3f91105e
|
use anynePositive for squeeze.singeli
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
15f6dd5d48
|
simplify 16-bit anynePositive
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
5f85305f43
|
GPR mask testing
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
efd79881cb
|
use single mask array for all type widths
|
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
|
c4d0f8bdc4
|
highlight "." in numbers
|
2022-11-24 13:08:20 +02:00 |
|
dzaima
|
d383fe57a7
|
clean up whitespace
|
2022-11-24 01:26:35 +02:00 |
|
dzaima
|
34e37d1b1a
|
increase gc root buffer size
|
2022-11-24 01:09:50 +02:00 |
|
dzaima
|
cf5ce07f51
|
simplify singeli xor/and/or definitions
|
2022-11-24 00:21:19 +02:00 |
|
Marshall Lochbaum
|
e60b942710
|
Formatting
|
2022-11-23 16:51:30 -05: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
|
49636bae79
|
replace --dynamic-list with visibility
|
2022-11-22 15:36:32 +02: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
|
966b78693b
|
fix test/precompiled.bqn
|
2022-11-18 00:16:34 +02:00 |
|
dzaima
|
5c65a1a7eb
|
move precompiled bytecode to submodule
|
2022-11-17 23:20:07 +02:00 |
|
dzaima
|
1b64b4b548
|
better temporary replxx state handling
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
35abd7f7e8
|
try $XDG_DATA_HOME before $HOME for REPL history directory
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
ff36205a34
|
bind ctrl+n & ctrl+p
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
1f5be9e69e
|
backslash input
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
9018051ce3
|
add •math.Atan2 autocomplete
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
c60bdaba4d
|
highlight 𝔽𝔾𝕎𝕏𝕊 as functions, reduce mut.h to calls.h
|
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
|
a48488a132
|
enable bracketed paste, add sanity check in syntax highlighter
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
07fa4a066b
|
save replxx history more
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
983452b409
|
system value completion
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
feb7b8b9a0
|
replxx REPL
|
2022-11-17 19:18:33 +02:00 |
|
dzaima
|
94f8b189f7
|
REINIT_TAIL → FINISH_OVERALLOC
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
a48f1f5eb0
|
fix -DMM=0
|
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
|
360aabb7cc
|
option to noinline mm_alloc & mm_free
|
2022-11-17 18:56:46 +02:00 |
|
dzaima
|
da1062c81c
|
remove unused #undef
|
2022-11-17 18:55:59 +02:00 |
|
dzaima
|
aee745a7d6
|
fix argument names of C2
|
2022-11-17 18:13:29 +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
|
8e631d7177
|
always take size in mm_alloc as u64
|
2022-11-14 22:42:32 +02:00 |
|
dzaima
|
3be97e6f61
|
update commented-out debug print
|
2022-11-14 20:44:19 +02: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
|
c81e95730a
|
fix -DMM=0 builds
|
2022-11-13 13:47:29 +02: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
|
a64f0ada5f
|
update src/README.md
|
2022-11-12 20:30:47 +02: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 |
|
Marshall Lochbaum
|
e7c1918ba0
|
Native <` implementation using addition
|
2022-11-09 12:19:02 -05:00 |
|
dzaima
|
87d0fa5dc7
|
fix gcc 9 build
|
2022-11-08 16:59:17 +02:00 |
|
dzaima
|
6467530823
|
use ty_u
|
2022-11-08 16:56:43 +02:00 |
|
Marshall Lochbaum
|
812b97dc51
|
Mark boolean +` result sorted and squoze
|
2022-11-07 20:23:15 -05:00 |
|
Marshall Lochbaum
|
666a41ab12
|
1- and 2-byte Singeli boolean +`
|
2022-11-07 17:54:11 -05:00 |
|
Marshall Lochbaum
|
f1ff499244
|
Implement multiple result types for non-Singeli +`bool
|
2022-11-07 17:09:41 -05:00 |
|
Marshall Lochbaum
|
7b3c69f9da
|
Take sum first in boolean plus-scan; special code for sparse or boolean sum
|
2022-11-07 15:35:53 -05:00 |
|
dzaima
|
4f9af9965c
|
clangd compilation command generating utility
|
2022-11-06 18:34:47 +02:00 |
|
dzaima
|
fdbd36250b
|
noinline writeNum, use loop instead of generated code
|
2022-11-06 03:17:31 +02:00 |
|
dzaima
|
fc059a77d0
|
noinline various things in main.c
|
2022-11-06 02:36:57 +02:00 |
|
dzaima
|
28d434a201
|
catch double-frees in debug mode
|
2022-11-06 02:11:12 +02:00 |
|
dzaima
|
f87a1155f5
|
store references instead of GC root functions to handle mutable roots
-0.21% binary size; mm_visit & mm_visitP got inlined in the gcFn-s, even though that's very pointless
|
2022-11-06 02:01:14 +02:00 |
|
dzaima
|
36111276c6
|
•math.Atan2
|
2022-11-05 20:36:54 +02:00 |
|
dzaima
|
25694db7ca
|
better non-Singeli comparison
|
2022-11-05 20:09:30 +02:00 |
|
dzaima
|
c9be8516c3
|
deduplicate generic sort work
|
2022-11-05 19:41:04 +02:00 |
|
dzaima
|
6e552fedf5
|
base case implementation for ⍋c8arr & ⍋c16arr
|
2022-11-05 19:00:59 +02:00 |
|
dzaima
|
ff0bfd34bb
|
squeeze Grade result
|
2022-11-05 18:48:54 +02:00 |
|
dzaima
|
471afb2a3f
|
handle 256|i8arr & similar
|
2022-11-03 17:28:21 +02:00 |
|
dzaima
|
3b56223618
|
allow 32768|intarr to squeeze to i16arr
|
2022-11-03 17:21:12 +02:00 |
|
dzaima
|
c1a77a24fb
|
fast (2⋆n)|ints
|
2022-11-03 15:35:41 +02:00 |
|
dzaima
|
96394c6f73
|
fix ⊔ making an invalid array on ("Af64"•internal.Variation⋈¯1)⊔⟨⟩
|
2022-11-03 01:26:38 +02:00 |
|
dzaima
|
cc406595c0
|
use direct comparison in ⊔
|
2022-11-03 00:32:44 +02:00 |
|
dzaima
|
70e7dcf38a
|
Merge remote-tracking branch 'mlochbaum/subset'
|
2022-11-02 23:19:03 +02:00 |
|
dzaima
|
4daabd708a
|
introduce calls.h, move vec_addN and vec_join to core header
and remove a bunch of apparently unnecessary mut.h imports
|
2022-11-02 23:17:52 +02:00 |
|
Marshall Lochbaum
|
600ee411f8
|
Use slash and comparison functions to filter •rand.Subset output faster
|
2022-11-01 20:25:13 -04:00 |
|
dzaima
|
bed2708537
|
move non-Singeli comparisons to function lookup
|
2022-10-27 19:27:15 +03:00 |
|
dzaima
|
8d6172126c
|
use void* instead of u8* for singeli function arguments
|
2022-10-25 17:27:08 +03:00 |
|
dzaima
|
5a7d702bc6
|
use incG more
|
2022-10-25 16:59:08 +03:00 |
|
Marshall Lochbaum
|
9862331696
|
Fix single-file build by defining GRADE_UD in selfsearch.c
|
2022-10-24 22:08:28 -04:00 |
|
Marshall Lochbaum
|
2844520109
|
Need to define GRADE_UD for radix.h from selfsearch.c without Singeli
|
2022-10-24 07:49:36 -04:00 |
|
Marshall Lochbaum
|
fa03cabc53
|
Index-of with small 𝕨 using (⊣×1+⊢)´ pattern
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
d1e40a01df
|
Use saved counts and possibly dense table initialization for 1-byte radix lookup
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
7cbd23c832
|
Skip radix moves if the top bytes are all the same
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
b9d5f10d4a
|
Unify radix sort and radix lookup prefix sums
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
2207d9f1bb
|
Combine monadic ∊ and ⊐ radix lookups with a macro
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
552e4f6751
|
Fix refcount handling for bool⊐𝕩
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
979c31fc3e
|
Table-based dyadic ⊒ for integers up to 2 bytes
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
5df198602c
|
Adjust search table sparse initialization threshold for type it stores
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
e318830365
|
Dyadic ⊒ implementation with a generic hash table
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
f5555021f2
|
Index-of with boolean 𝕨, using two comparisons
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
0f7bfa2575
|
Implement bit_find and fast self-search for booleans
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
96740566e9
|
Extend lookup code to boolean searched-for array
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
d9519eb6e1
|
Extend table-based membership to Index-of
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
0cb5e4ee10
|
Table-based 1- and 2-byte integer membership
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
447ce6163f
|
Introduce bit_has and use for ∧´, ∨´, and 𝕨∊bool
|
2022-10-23 22:08:08 -04:00 |
|
Marshall Lochbaum
|
236d8dedd6
|
Move search functions to search.c
|
2022-10-23 22:08:08 -04:00 |
|
dzaima
|
cc467ce8ca
|
cleanup
|
2022-10-23 13:14:36 +03:00 |
|
dzaima
|
66584ce149
|
fix 0‿¯1⊏129⥊100
|
2022-10-21 18:17:12 +03:00 |
|
dzaima
|
f2b6b5d446
|
system value redefining with •ReBQN
|
2022-10-19 23:12:28 +03:00 |
|
dzaima
|
4d9a63f68b
|
fix •ReBQN
|
2022-10-19 20:56:30 +03:00 |
|
dzaima
|
336049560b
|
don't include •FFI if FFI is disabled
|
2022-10-19 19:31:21 +03:00 |
|
dzaima
|
ec62856b67
|
•listsys
|
2022-10-19 19:19:11 +03:00 |
|
dzaima
|
accd7384bd
|
delay •file initialization
|
2022-10-19 19:16:13 +03:00 |
|
dzaima
|
a72778ed6f
|
extract system value info to object
|
2022-10-19 19:15:21 +03:00 |
|
dzaima
|
64ce7ec6fe
|
fix non-squeezed string •FFI arguments
|
2022-10-18 19:26:53 +03:00 |
|
Marshall Lochbaum
|
130653dbda
|
Allow character arguments to •bit operations
|
2022-10-17 09:39:38 -04:00 |
|
Marshall Lochbaum
|
89c1b39c6d
|
Don't allow 0 as a width for •bit
|
2022-10-17 09:39:38 -04:00 |
|
Marshall Lochbaum
|
698c902564
|
Implement scalar extension for •_bit
|
2022-10-17 09:39:38 -04:00 |
|
Marshall Lochbaum
|
022ef64f6b
|
Add NOUNROLLs to bitwise functions
|
2022-10-17 09:39:38 -04:00 |
|
Marshall Lochbaum
|
80f8ac9643
|
2-argument •bit operations
|
2022-10-17 09:39:38 -04:00 |
|
Marshall Lochbaum
|
8f5259e77d
|
Implement 1-argument •bit operations
|
2022-10-17 09:39:38 -04:00 |
|
dzaima
|
2a17d87572
|
calculate •FFI allocation layout ahead-of-time
|
2022-10-16 14:16:34 +03:00 |
|
dzaima
|
83af05d274
|
fix building on gcc≤10
|
2022-10-10 13:53:56 +03:00 |
|
dzaima
|
2eecc0feda
|
squeeze *u8/*u16/*u32 result
it has to sometimes be one size up to accommodate for the upper unsigned range, but often (?) it should fit fine in the signed range of its type
|
2022-10-08 19:59:03 +03:00 |
|
dzaima
|
ac041d37f4
|
fix WARN_SLOW build
|
2022-10-08 19:30:08 +03:00 |
|
dzaima
|
7e1c9b50cd
|
initial struct support
|
2022-10-08 19:08:20 +03:00 |
|
dzaima
|
702d4e979d
|
various utility changes
|
2022-10-08 19:03:41 +03:00 |
|
dzaima
|
529d2abae4
|
add warning about miscompilation for x86 on gcc
|
2022-10-08 14:41:44 +03:00 |
|
dzaima
|
7bda795365
|
fix gcc warnings about pointer casts in 32-bit builds
|
2022-10-07 12:57:59 +03:00 |
|
dzaima
|
abcb575a53
|
simplify bit boolean constant replicate start
|
2022-10-04 22:11:20 +03:00 |
|
Marshall Lochbaum
|
ce74e36a19
|
Fix lots of missing casts for function calls
|
2022-09-30 20:20:38 -04:00 |
|
dzaima
|
82ac059b75
|
disable clmul ≠` when pclmul not available
|
2022-09-30 20:06:52 +03:00 |
|
Marshall Lochbaum
|
cca64bba70
|
Move nescan.c into md1.c and constrep.c into slash.c
|
2022-09-30 11:40:37 -04:00 |
|
Marshall Lochbaum
|
47cdf02877
|
Build Singeli files with a filename prefix
|
2022-09-30 11:35:25 -04:00 |
|
Marshall Lochbaum
|
cad566d547
|
Not-equals scan with carry-less multiply
|
2022-09-29 20:39:46 -04:00 |
|
Marshall Lochbaum
|
acc200222d
|
Move constant Replicate Singeli code to its own file
|
2022-09-29 20:33:09 -04:00 |
|
Marshall Lochbaum
|
582afe33c9
|
Merge 3 to 7 replicate float with other types: shuffle instead of permute
|
2022-09-29 20:12:45 -04:00 |
|
Marshall Lochbaum
|
29886f355a
|
Combine small-replication shuffle vector tables across types
|
2022-09-29 19:58:14 -04:00 |
|
Marshall Lochbaum
|
e407286185
|
BMI2-based constant boolean Replicate for 𝕨<=52
|
2022-09-28 21:56:57 -04:00 |
|
Marshall Lochbaum
|
0c0d967dc3
|
Adjust Table thresholds for fast constant Replicate
|
2022-09-28 17:18:55 -04:00 |
|
Marshall Lochbaum
|
09aba9bc37
|
slash.singeli is only used with __BMI2__ for now
|
2022-09-28 17:18:42 -04:00 |
|
Marshall Lochbaum
|
4836f70e0d
|
Simplify rep_const_broadcast, removing unused kv==0 case
|
2022-09-28 14:14:39 -04:00 |
|
Marshall Lochbaum
|
d28a74b572
|
Move 4-shuffle data to a table
|
2022-09-28 13:35:08 -04:00 |
|
Marshall Lochbaum
|
9947de0146
|
Performance improvements when compiling slash.singeli
|
2022-09-27 22:00:59 -04:00 |
|
Marshall Lochbaum
|
db3e0a6324
|
Move all the algorithm decision logic into main rep_const and simplify
|
2022-09-27 22:00:59 -04:00 |
|
Marshall Lochbaum
|
c430922a7e
|
Use shared functions and shuffle array for sizes 3 to 7 in constant Replicate
|
2022-09-27 22:00:59 -04:00 |
|