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 |
|