Commit Graph

419 Commits

Author SHA1 Message Date
dzaima
79bd6fc689 use shProd more 2022-05-30 02:07:25 +03:00
dzaima
cc44b3e57b shProd 2022-05-30 01:54:47 +03:00
Marshall Lochbaum
df783d15a5 Align toKCells with rank_c1 changes 2022-05-29 18:14:04 -04:00
dzaima
e2fda60745 profiler 2022-05-29 22:02:50 +03:00
dzaima
6033c2e90e flush pipes in g_pst 2022-05-29 16:12:14 +03:00
dzaima
60a68c3c25 manual shcpy loop 2022-05-29 14:20:11 +03:00
dzaima
54645df2a9 use shcpy for copying shapes 2022-05-29 14:08:30 +03:00
dzaima
3fa0463241 manual eqShPart
mainly to not suffer the cost of function invocation, as the common case is len==1
2022-05-29 14:03:15 +03:00
dzaima
3dd1bffe2f don't unroll arr_csz 2022-05-29 13:57:03 +03:00
dzaima
bf618b9b64 native 𝔽⌾(n⊸↑) & 𝔽⌾(n⊸↓) 2022-05-29 13:38:04 +03:00
dzaima
04c2ce7ade tests for bqnffi.h 2022-05-28 17:35:30 +03:00
dzaima
662b23d808 add newline after fputs 2022-05-23 16:45:50 +03:00
dzaima
c7e0b59e88 print more things to stderr 2022-05-22 04:40:13 +03:00
dzaima
409524d958 noinline version of vec_add 2022-05-11 18:31:49 +03:00
dzaima
5e67b87cf1 identity for f⌜ 2022-05-07 15:46:08 +03:00
dzaima
88f4fdaa7e 16-bit & 64-bit ⊔ cases 2022-05-01 03:14:23 +03:00
dzaima
7ab504c8bc unified int & char cases for ⊏ 2022-05-01 01:53:45 +03:00
dzaima
7ece6b2179 unified int & char cases for ⊔ 2022-05-01 01:35:16 +03:00
dzaima
7f9773f971 unified int & char cases for ⍉ & ⌽ 2022-05-01 01:35:11 +03:00
dzaima
1babdf247f unified int & char cases for bitarr/x 2022-04-30 21:49:47 +03:00
dzaima
ab868a55f3 singeli copy 2022-04-25 03:06:11 +03:00
dzaima
113f72e86d singeli bitarr conversion to wider arrays 2022-04-21 18:27:20 +03:00
dzaima
acc8e35c2f •file.MapBytes 2022-04-09 19:45:14 +03:00
dzaima
422dc80283 decG round 4 2022-04-07 17:19:36 +03:00
dzaima
69067b8fcc decG round 2 2022-04-07 15:15:28 +03:00
dzaima
6bce21b55c fix generic squeeze case 2022-04-04 21:38:35 +03:00
dzaima
e3fe87d040 optimize eequal & expose as •internal.EEqual 2022-04-04 16:16:29 +03:00
dzaima
b9f5291a33 better basic num_squeeze 2022-04-04 10:02:30 +03:00
dzaima
02087d7611 split non-tail-calling part of equal to its own function 2022-04-02 20:05:03 +03:00
dzaima
49ff5a04ff singeli ≡ 2022-04-02 16:58:35 +03:00
dzaima
37bf551e54 BMI2 bitarr/i8arr & bitarr/i16arr 2022-04-01 22:41:32 +03:00
dzaima
09fe162b73 DONT_FREE fix, more gdb utils 2022-03-12 03:02:21 +02:00
dzaima
0c79b44ae0 output errors to stderr 2022-03-05 02:32:28 +02:00
dzaima
4ecd336595 )mem f 2022-03-04 18:31:54 +02:00
dzaima
a7b8dd86cf check array size overflowing on creation 2022-01-11 17:40:24 +02:00
dzaima
65c856693f fix t_harrPartial freeing 2022-01-11 00:55:57 +02:00
dzaima
6672d95ea8 fix c2iW/c2iX, )internalPrint 2022-01-06 03:51:21 +02:00
dzaima
ade183e635 bunch of header file changes 2022-01-06 01:17:10 +02:00
dzaima
b6f43ec4be deduplicate a bit 2022-01-01 22:51:14 +02:00
dzaima
ff4573f65c bitarr generation in bit_sel 2022-01-01 22:41:29 +02:00
dzaima
08f04a8521 pass untagged pointer to under functions 2021-12-30 21:52:29 +02:00
dzaima
c7a6176be3 store untagged modifier in derived function object 2021-12-30 03:01:02 +02:00
dzaima
3d5a92c1f3 faster integer squeeze 2021-12-20 00:53:13 +02:00
dzaima
7cc88fae9c native rank 2 ⍉ 2021-12-19 16:43:37 +02:00
dzaima
0c5b98772c m_harrs → M_HARR 2021-12-17 18:04:19 +02:00
dzaima
12250ef202 changes to •ReBQN 2021-12-17 14:39:51 +02:00
dzaima
b4425508c3 fix merge refcounting 2021-12-16 17:33:29 +02:00
dzaima
4af4b45ab7 fix / with negative numbers in indexes 2021-12-16 12:20:42 +02:00
dzaima
c68858ba90 various fixes for ⊑ 2021-12-16 09:14:13 +02:00
dzaima
8a1ccc7198 native ⊑; f⌾(v⊸⊏) f64arr 2021-12-15 14:03:02 +02:00
dzaima
e7662b0f6a separate array & scalar cases in arith builtins 2021-12-13 00:16:23 +02:00
dzaima
cd07af4e8b add g_pst gdb utility 2021-12-12 23:21:22 +02:00
dzaima
1b1fe2ba57 BMI2 bitarr/bitarr 2021-12-12 23:11:07 +02:00
dzaima
3c09781d1a )gc, )mem 2021-12-01 17:09:19 +02:00
dzaima
4697b91b1e fix >2 repeated imports & error on cyclical importing 2021-11-26 00:25:11 +02:00
dzaima
0389eda29b inverse modifiers 2021-11-25 00:24:16 +02:00
dzaima
b000576572 native /⁼ 2021-11-22 00:24:59 +02:00
dzaima
f55e349999 inverse headers 2021-11-21 21:03:14 +02:00
dzaima
cd97714ef5 ptr_dec with inlined freeing method 2021-11-20 17:09:05 +02:00
dzaima
c79e260e34 m_v[1234] → m_hVec[1234] 2021-11-20 01:05:14 +02:00
dzaima
5484c109ea return value from ptr_inc 2021-11-20 00:58:18 +02:00
dzaima
fde8f89354 remove _Thread_local because plenty other things don't have it 2021-11-07 19:01:29 +02:00
dzaima
049188d8a6 complete native ⋈ 2021-11-03 20:44:43 +02:00
dzaima
8cfbaf8b30 enum of primitive numbering 2021-11-03 20:28:00 +02:00
dzaima
dd3965cb3c 2021-11-03 20:16:04 +02:00
dzaima
6aaaaeb39c more consistent print method naming scheme 2021-11-02 18:32:25 +02:00
dzaima
3e372620a2 array-scalar comparison function lookup table 2021-10-24 21:12:39 +03:00
dzaima
d42dd3dcf9 merged typed types 2021-10-22 17:11:54 +03:00
dzaima
e38e4f89ae overallocate heap 2021-10-19 18:12:27 +03:00
dzaima
363309a218 some cleanup 2021-10-11 21:50:16 +03:00
dzaima
1072a8aa77 break less on recursive errors 2021-10-10 23:24:53 +03:00
dzaima
573b97f60b fast ∧´ 2021-10-04 00:23:53 +03:00
dzaima
f0c6671ec0 fast ∨´ 2021-10-04 00:10:24 +03:00
dzaima
3d23d8ef70 fast ≠` 2021-10-03 23:57:43 +03:00
dzaima
1bca264db8 bitarrs 2021-10-03 23:18:30 +03:00
dzaima
1c83483d53 fix formatter incorrectly consuming an argument 2021-09-29 21:19:21 +03:00
dzaima
7600431fa6 fix slow small array checks 2021-09-26 14:26:37 +03:00
dzaima
d2ea19c757 more slow warns 2021-09-26 13:36:37 +03:00
dzaima
797a848ed4 warn slow for unknown scans & folds & ⍋ 2021-09-26 01:04:18 +03:00
dzaima
28f40e5368 slow notes 2021-09-25 20:39:06 +03:00
dzaima
a91e351aee fix deep squeeze 2021-09-25 19:34:48 +03:00
dzaima
02605fe271 more tyarrTemplate.h instancing out of core.h 2021-09-25 15:53:42 +03:00
dzaima
a8c5dd6581 better squeezing 2021-09-25 15:26:06 +03:00
dzaima
ecb8af658b fix squeezing of ¯2147483648 2021-09-25 14:52:35 +03:00
dzaima
4bdc1ec3cd squeeze objects
negative effect on performance, but whatever
2021-09-25 14:39:48 +03:00
dzaima
a15f66c43b rename formatting functions 2021-09-25 13:53:53 +03:00
dzaima
749b3e1e81 Type to macro 2021-09-25 13:08:25 +03:00
dzaima
8cc6732cd4 ⌾⥊ and ⌾(const G H) 2021-09-25 02:34:58 +03:00
dzaima
20d0b3a288 time command 2021-09-23 10:46:49 +03:00
dzaima
b076f4bd43 fix ¯∞ formatting 2021-09-21 17:50:23 +03:00
dzaima
c53b4b2294 move builtins.h to root of src 2021-09-21 17:28:25 +03:00
dzaima
77cb03033d throw overflow error in isum 2021-09-21 17:02:38 +03:00
dzaima
97c1b1d31d overflow builtin cleanup 2021-09-21 16:56:20 +03:00
dzaima
6f99b58099 argument "-" for stdin file 2021-09-21 16:44:23 +03:00
dzaima
3da7323c57 char specialized squeezing 2021-09-20 23:32:02 +03:00
dzaima
7cc37e2723 special-case JIT ARRO for 1 and 2 items 2021-09-20 13:17:51 +03:00
dzaima
9494ef7b9f don't keep fl_squoze of not actually guaranteed full squeeze 2021-09-17 15:12:23 +03:00
dzaima
663c318219 deep squeeze 2021-09-17 14:46:03 +03:00
dzaima
62a96f1196 squoze 2021-09-16 23:20:58 +03:00
dzaima
427d508324 more precise flags usage 2021-09-16 21:54:37 +03:00
dzaima
93f362c4f2 use str8l more 2021-09-11 23:52:27 +03:00
dzaima
6cf3ccb7d5 use new conversion functions 2021-09-11 23:17:37 +03:00
dzaima
e98660bfa8 more typed array conversion 2021-09-11 23:17:17 +03:00
dzaima
0df5538a2a rename header files 2021-09-11 17:22:26 +03:00
dzaima
fc67c92510 typed atomUnit 2021-09-10 20:03:10 +03:00
dzaima
a36ae1a716 pass untagged pointer to get & getU 2021-09-09 23:52:18 +03:00
dzaima
59dcde16c9 untag this pointer of modifier impl functions 2021-09-09 21:38:56 +03:00
dzaima
337a6bbc5e more changes 2021-09-09 18:42:48 +03:00
dzaima
f8962c1eb9 use generic squeeze for arith 2021-09-09 17:30:40 +03:00
dzaima
0913d3b8f2 ElType cleanup 2021-09-09 17:21:19 +03:00
dzaima
fded6996e6 squeeze & hash fixes 2021-09-09 16:59:47 +03:00
dzaima
a6251ff3e7 squeeze int arrs on withFill 2021-09-09 16:08:13 +03:00
dzaima
ffc4cec1ae monadic i8/i16 arith 2021-09-05 23:26:31 +03:00
dzaima
667ac0b1d6 extremely basic i8/i16arr arith 2021-09-05 22:56:25 +03:00
dzaima
cec962fb8c usz multiplication 2021-09-05 21:51:00 +03:00
dzaima
e5338e931f fuzzing support 2021-09-05 18:00:28 +03:00
dzaima
21ba88751a working i8/i16-arrs 2021-09-05 16:06:31 +03:00
dzaima
80be141968 tyarr.c 2021-09-05 02:58:18 +03:00
dzaima
a191222967 tyarrTemplate.h 2021-09-05 02:29:06 +03:00
dzaima
4961c22c8b more incorrect fsizeof 2021-09-05 01:55:29 +03:00
dzaima
e225da87c7 fix i32/c32-arr allocation size 2021-09-05 01:36:16 +03:00
dzaima
8aa0687ef9 reorganize typed arr files 2021-09-05 01:10:40 +03:00
dzaima
2c7febca75 that was never a thing 2021-09-02 00:34:10 +03:00
dzaima
63cafe8e7b unified filling for ⥊ and ↑
well except for ¯N↑
2021-08-23 02:30:06 +03:00
dzaima
a3f87d4dcb fix %f and clarify o2s message 2021-08-22 23:20:28 +03:00
dzaima
750207f1f8 fix exponential notation 2021-08-21 06:16:07 +03:00
dzaima
b61380aa73 better number formatting 2021-08-21 05:52:17 +03:00
dzaima
a56a20b046 fix vm_fmtPoint on non-equal s and src types 2021-08-21 04:41:51 +03:00
dzaima
3991efd3cd full SETH 2021-08-21 03:32:11 +03:00
dzaima
521abe669d hopefully fix SETH refcounts 2021-08-16 00:48:15 +03:00
dzaima
0af6895f4b unfinished SETH 2021-08-15 03:54:13 +03:00
dzaima
de86ce2aaa src/README.md, and cleaning up things while at it 2021-08-14 21:27:06 +03:00
dzaima
5d1d3467d9 append only know character arrays in formatter 2021-08-14 16:35:23 +03:00
dzaima
10d0cdc2fe •SH 2021-08-13 23:22:37 +03:00
dzaima
8934db0ec5 impure function mess 2021-08-04 21:06:33 +03:00
dzaima
39d095c8dc fix •-things being considered pure 2021-08-04 20:32:16 +03:00
dzaima
e9aff609bf more m_arr refactoring cleanup 2021-08-03 20:52:53 +03:00
dzaima
6799e8f078 fix >0⥊0 2021-08-03 16:51:25 +03:00
dzaima
849eeff465 initialize ia on allocation always 2021-08-03 02:57:46 +03:00
dzaima
8d7a31c8e9 store object pointer in slice 2021-08-01 18:59:31 +03:00
dzaima
be10e0d509 better fork_c2 2021-08-01 04:15:00 +03:00
dzaima
65f2cca251 better fork_c1 2021-08-01 04:12:46 +03:00
dzaima
a444d4827d decSh doesn't really need to be split 2021-08-01 00:27:00 +03:00
dzaima
46d4acb72b special-case HArrs in withFill 2021-07-31 23:56:57 +03:00
dzaima
74a3a87166 handle arr⊸F and (arr G H) faster 2021-07-31 23:29:21 +03:00
dzaima
749b098f1e use decR less 2021-07-31 22:40:33 +03:00
dzaima
c00834cf15 move mm_free call into virtual function so dec is simpler 2021-07-30 04:40:56 +03:00
dzaima
b18157d86b native ⥊
it's horrible but it appears to work
2021-07-27 19:48:22 +03:00
dzaima
55f7f8ef5b couple more type fixes 2021-07-21 00:03:45 +03:00
dzaima
5dd7288144 strict prototypes 2021-07-20 22:21:59 +03:00
dzaima
7ee8d642dc trailing newlines 2021-07-20 22:18:37 +03:00
dzaima
d4d4521e52 more fixing of warnings 2021-07-20 22:09:59 +03:00
dzaima
0bcf3b592f more comparison type fixing
and some more / opt to make it not slower
2021-07-20 21:56:35 +03:00
dzaima
99896fbace improving loop counter variable types 2021-07-20 21:32:41 +03:00
dzaima
c2c64f9654 move thrF to a full function
0.3% more instrs with it never being called what
2021-07-20 02:57:18 +03:00
dzaima
78cd23907e make err fails more clear 2021-07-19 23:09:10 +03:00
dzaima
2e2b479d37 shorten mut_init 2021-07-19 19:25:25 +03:00
dzaima
708e06c0ea simplify mut usage where type is guaranteed correct 2021-07-19 04:22:18 +03:00
dzaima
9c66cbbb4b move noinline fns out of .h files 2021-07-19 03:48:52 +03:00
dzaima
43d2946447 fix refcount errors in merge 2021-07-16 23:11:34 +03:00
dzaima
576876dd32 fix warnings for usz==u64 2021-07-12 00:50:29 +03:00
dzaima
2a0b91e7b4 counters instead of allocB 2021-07-11 23:07:07 +03:00
dzaima
1b31c88e4c use mm_heapUsed() instead of allocB 2021-07-11 22:45:08 +03:00
dzaima
08723a3c80 use TI macros everywhere 2021-07-06 19:22:45 +03:00
dzaima
9ee36dae94 fix TypeInfo.arrD1 for c32arr 2021-07-03 17:01:39 +03:00
dzaima
ee3ef4370c waste less on thrF 2021-07-03 02:55:22 +03:00
dzaima
7999683edf skip value checking for builtin loading
perf is reporting an 0.15% increase in instruction count (what?), but that's not gonna stop me
2021-07-03 02:38:09 +03:00
dzaima
f75efbcc26 static harr.c functions 2021-07-03 02:04:31 +03:00
dzaima
ceb967bbd4 return Arr* from m_fillarrp 2021-07-03 01:53:26 +03:00
dzaima
08df9bfe7b arrP_sh* → arr_sh* 2021-07-03 01:38:56 +03:00
dzaima
d49d5a3e31 don't use arr_sh* 2021-07-03 01:37:54 +03:00
dzaima
c0a75327ef return Arr* from mut_fp 2021-07-03 01:25:55 +03:00
dzaima
c52a042eb4 return Arr* from slices 2021-07-03 01:25:55 +03:00
dzaima
daa8294252 return Arr* from m_(i32|c32|f64)arrp 2021-07-03 00:37:00 +03:00
dzaima
49810ce8bc rename mm_allocN 2021-07-03 00:27:20 +03:00
dzaima
43d0d1e043 delay tagging for arrays 2021-07-03 00:22:40 +03:00
dzaima
d8b2ac0268 delay tagging 2021-07-03 00:02:56 +03:00
dzaima
60bef6879c fix printRaw 2021-07-02 15:30:42 +03:00
dzaima
b32074f4d1 support nested compilation 2021-06-30 22:54:33 +03:00
dzaima
1fd61c5467 make err NOINLINE 2021-06-29 22:55:34 +03:00
dzaima
a4446716bf compiler errors 2021-06-27 20:28:19 +03:00
dzaima
b51cf8cfc2 fix CHKV 2021-06-19 21:28:57 +03:00
dzaima
d27dc57bed CHKV 2021-06-19 21:16:23 +03:00
dzaima
1afe46b393 move TAlloc/TStack around, immediate functions 2021-06-15 01:20:32 +03:00
dzaima
a0553b9798 faster nvm.c compiling 2021-06-10 22:37:11 +03:00
dzaima
981ba0e261 local stack pointer in JIT 2021-06-10 01:42:29 +03:00
dzaima
550b91688a extremely basic x86-64 generator 2021-06-09 18:47:50 +03:00
dzaima
96f3089410 proper i64 formatting, move openbsd hack up 2021-06-06 22:23:55 +03:00
dzaima
7e994dd913 modifiable defines 2021-06-06 16:50:18 +03:00
dzaima
47f8984e74 faster i32arrOfBools/ 2021-06-06 15:15:18 +03:00
dzaima
cdd4d136be make gcc happy 2021-06-04 15:47:26 +03:00
dzaima
4e0ea07eb2 correct character fill 2021-06-04 03:16:48 +03:00
dzaima
62d73b6acf faster asFill 2021-06-04 03:15:01 +03:00
dzaima
ba28f7e892 faster ≡ 2021-06-04 02:36:11 +03:00
dzaima
24f61bd5a5 move builtin defs to own file 2021-06-04 02:07:30 +03:00
dzaima
ae470d64b2 fix bi_emptySVec creation 2021-06-01 23:38:15 +03:00
dzaima
f1b1686300 •file.List 2021-06-01 22:12:34 +03:00
dzaima
b4ffc3115a •Exit 2021-06-01 20:32:24 +03:00
dzaima
b8c362247b fix F`fillarr leaking fill element
also print higher precision numbers
2021-06-01 17:13:43 +03:00
dzaima
7caa7dceb5 properly fall back to runtime in native ⊏ 2021-05-30 02:46:49 +03:00
dzaima
74fe1f1243 random changes 2021-05-30 00:56:17 +03:00
dzaima
510de71095 fix append_fmt appending a null byte 2021-05-29 15:02:36 +03:00
dzaima
ff2af490b8 special-case appending atoms with ∾ 2021-05-27 20:13:22 +03:00
dzaima
3ad82faadd split fillEqual into rare and non-rare versions 2021-05-27 19:44:15 +03:00
dzaima
d9110e8b5a optimize v_get, v_set, and a bit of fills 2021-05-27 19:00:08 +03:00
dzaima
752a68cb2d static const tagged builtins 2021-05-27 18:08:21 +03:00
dzaima
3b017648d8 extended variables, REPL support 2021-05-27 04:05:17 +03:00
dzaima
48229571ba proper bytecode rewriting 2021-05-26 16:34:36 +03:00
dzaima
7bf3b4be50 store directly needed blocks in bodies 2021-05-26 14:45:29 +03:00
dzaima
582273229b wrap 2021-05-25 02:52:21 +03:00
dzaima
50e76c8c04 move some headers & defs around 2021-05-25 00:51:09 +03:00
dzaima
8dc1ffd7c3 move atomEqual around 2021-05-24 18:26:38 +03:00
dzaima
b2e65cc9b7 separate out simple comparison 2021-05-24 18:05:35 +03:00
dzaima
200456ac72 integer arith 2021-05-24 17:58:11 +03:00
dzaima
8cfa3e7f55 builtin initialization in load.c 2021-05-24 14:41:10 +03:00
dzaima
cc36fd0d7c assert partial HArrs are finished 2021-05-24 13:18:10 +03:00
dzaima
6b4c5913ff RT_VERIFY 2021-05-24 01:05:34 +03:00
dzaima
c23214a4de add extern to globals 2021-05-24 00:13:49 +03:00
dzaima
b2b826be9b incremental compilation 2021-05-23 21:55:49 +03:00