Commit Graph

494 Commits

Author SHA1 Message Date
dzaima
f9a8eb0ce3 static noinline apparently results in argument slots being optimized out
but that means that the arguments between the two won't align, resulting in unnecessary 'mov's
2022-06-03 02:51:09 +03:00
dzaima
2697e749e1 better ⌾ fallback 2022-06-02 03:30:39 +03:00
dzaima
cb1338951c more shcpy 2022-05-30 17:53:54 +03:00
dzaima
3455bed3ee remove pointless check in ≠𝕩 2022-05-30 15:12:48 +03:00
dzaima
3c314e266a correct format string 2022-05-30 02:13:50 +03:00
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
68914c1a39 Native dyadic Rank modifier implementation, except empty frames 2022-05-29 18:14:04 -04:00
Marshall Lochbaum
3947463c34 Native dyadic Rank modifier implementation when one or both arguments are full rank 2022-05-29 18:14:04 -04:00
Marshall Lochbaum
2c0de9ee02 Check rank vector completely before starting computations in ⎉ 2022-05-29 18:14:04 -04:00
dzaima
e2fda60745 profiler 2022-05-29 22:02:50 +03:00
dzaima
a108ef2ce7 use eqShPart in arithd.c 2022-05-29 14:44:44 +03:00
dzaima
54645df2a9 use shcpy for copying shapes 2022-05-29 14:08:30 +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
093958f92a
Merge pull request #21 from dzaima/ffi
FFI
2022-05-28 01:29:21 +03:00
dzaima
af194b55ae make •FFI read relative to file 2022-05-22 04:42:59 +03:00
Paul A. Patience
e684c64847 Add •file.Remove 2022-05-13 21:18:47 -04:00
Paul A. Patience
fdeae8fbfe Add •file.Rename 2022-05-12 18:19:23 -04:00
dzaima
d186294e28 allocate at least minimum size, rename functions 2022-05-11 22:56:14 +03:00
dzaima
a601ba6a76 very unfinished FFI 2022-05-11 22:30:14 +03:00
dzaima
409524d958 noinline version of vec_add 2022-05-11 18:31:49 +03:00
dzaima
ec273f2102 fix •file.CreateDir 2022-05-10 14:19:15 +03:00
dzaima
63bd4a876e •file.CreateDir 2022-05-09 22:57:37 +03:00
dzaima
894c56205f native ⌾⍉ 2022-05-02 20:35:16 +03:00
dzaima
3496a939b6 more switch cleanup 2022-05-01 04:47:21 +03:00
dzaima
0164e4e0bc lazy i8/i16 ∧𝕩 & ∨𝕩 2022-05-01 03:30:11 +03:00
dzaima
88f4fdaa7e 16-bit & 64-bit ⊔ cases 2022-05-01 03:14:23 +03:00
dzaima
5d687b1ac3 lazy impl of i8/i16 arrays in 𝕨 of ⊔ 2022-05-01 03:00:36 +03:00
dzaima
cee8e841f9 better fillarr creating in •internal.Variation 2022-05-01 02:49:10 +03:00
dzaima
0907458b4d allow c32 to use i32 path in ⍋𝕩 2022-05-01 02:34:47 +03:00
dzaima
836fe9184a deduplicate things in ⊏ 2022-05-01 02:24:51 +03:00
dzaima
886feb4ed0 fix fill handling of ⌽ 2022-05-01 02:10:31 +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
426187be07 make •SH run under cygwin 2022-04-29 22:38:18 +03:00
dzaima
3f92c32399 no-op ⥊vec 2022-04-25 18:10:37 +03:00
dzaima
53b7b2465e correct floating point order of +´ and ×´ 2022-04-21 15:51:10 +03:00
dzaima
6f5414b2a5 ∨`bitarr 2022-04-21 15:12:23 +03:00
dzaima
cd431d3338 singeli +` 2022-04-21 03:51:37 +03:00
dzaima
826e9c693a fix 2×´1‿1 2022-04-18 23:23:46 +03:00
dzaima
996009bf09 remove unnecessary header inclusion 2022-04-12 16:58:33 +03:00
dzaima
2e6f94bbf5 move immintrin.h file within ifdef 2022-04-12 16:57:47 +03:00
dzaima
a4a72a78c4 singeli select (disabled) 2022-04-12 16:45:43 +03:00
dzaima
c54e63099f additional check in •internal.Variation 2022-04-12 16:24:25 +03:00
dzaima
f079aa5f76 move select to its own file 2022-04-12 16:23:43 +03:00
dzaima
d28454206d check •term.OutRaw & •term.ErrRaw input, fix •bit._cast overflow check 2022-04-09 22:53:57 +03:00
dzaima
fcb6a164ca fix •bit._cast on large inputs 2022-04-09 20:14:42 +03:00
dzaima
355bd5646e correct •file.MapBytes name 2022-04-09 19:51:27 +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
ff6a0a6d22 decG round 3 2022-04-07 16:03:50 +03:00
dzaima
69067b8fcc decG round 2 2022-04-07 15:15:28 +03:00
dzaima
9b8f8f3725 decG round 1 2022-04-07 13:56:11 +03:00
dzaima
502197b62f explicitly disable spawn on wasm 2022-04-06 20:05:27 +03:00
dzaima
377b38b84f fix •term.RawMode fallback 2022-04-06 19:14:10 +03:00
dzaima
4a316c9398 don't include setjmp.h when CATCH_ERRORS=0 2022-04-06 18:52:54 +03:00
dzaima
e3fe87d040 optimize eequal & expose as •internal.EEqual 2022-04-04 16:16:29 +03:00
dzaima
1ce5712a97 f64 case in ⊑ 2022-04-04 11:30:35 +03:00
dzaima
4ed2d0bec2 sysfn cleanup 2022-04-03 17:38:06 +03:00
dzaima
a9331ef8f0 fast bit_cpy head & tail 2022-04-02 23:47:07 +03:00
dzaima
3e4b0e882d •internal.Temp 2022-04-02 20:40:46 +03:00
dzaima
980f20df9a 𝕨/𝕩: move tail skipping to BMI-less build 2022-04-02 17:54:21 +03:00
dzaima
40dc184063 use singeli for c16lut generation 2022-04-02 17:19:20 +03:00
dzaima
49ff5a04ff singeli ≡ 2022-04-02 16:58:35 +03:00
dzaima
b6dc3cc239 /bitarr → i8arr & i16arr 2022-04-01 23:30:57 +03:00
dzaima
37bf551e54 BMI2 bitarr/i8arr & bitarr/i16arr 2022-04-01 22:41:32 +03:00
taswelll
cebadbd301
fix •term.ErrRaw 2022-03-22 22:34:37 +01:00
dzaima
7b031a2aa0 •file.Exists 2022-03-15 21:37:33 +02:00
dzaima
eae7501d36 fix •file.Type when file not present 2022-03-15 20:47:01 +02:00
dzaima
ccd2b70747 more mut_fillG 2022-03-12 03:53:27 +02:00
dzaima
d78a45a457 smarter virtual function reading deduplication 2022-03-12 03:44:46 +02:00
dzaima
9d3067fa4b new mut interface 2022-03-12 03:08:25 +02:00
dzaima
d8835d2407 very slightly faster •_while_ 2022-03-10 21:35:27 +02:00
dzaima
ef9d92be5c return 2 32-bit numbers from •Hash 2022-03-10 19:16:09 +02:00
dzaima
b7ec175901 rename •term.Raw→•term.RawMode 2022-03-10 19:04:24 +02:00
dzaima
94e22ecf8f fix error message 2022-03-06 23:47:40 +02:00
dzaima
d2674db956 heap dump 2022-03-06 15:38:30 +02:00
dzaima
03978f333c make •bit._cast properly error on non-array 𝕩 2022-03-06 13:44:27 +02:00
dzaima
2ac2309ed8 fix refcount management in •bit._cast 2022-03-05 19:28:26 +02:00
dzaima
a1638f9fc5 fix •SH 2022-03-05 18:17:15 +02:00
dzaima
0c79b44ae0 output errors to stderr 2022-03-05 02:32:28 +02:00
dzaima
5cd19eafe8 vectorized dyadic arith tail element handling 2022-02-27 18:46:35 +02:00
dzaima
de4914991a •term.OutRaw, •term.ErrRaw 2022-02-25 18:20:25 +02:00
dzaima
2049686527 •term 2022-02-16 01:41:46 +02:00
dzaima
5e865589b6 optimized f⌾(bitarr⊸/) 2022-02-06 19:06:03 +02:00
dzaima
d85fb9a592 •file.Type, •file.Name 2022-02-05 18:41:21 +02:00
dzaima
71c9c67e46 •bit._cast⁼, support inverses of 1- and 2-modifier builtins 2022-02-05 02:45:40 +02:00
Marshall Lochbaum
6b9375ed66 Check range for •bit._cast character types 2022-02-04 18:05:28 -05:00
Marshall Lochbaum
0ff92553a4 Better type (operand) processing for •bit._cast 2022-02-04 18:01:23 -05:00
Marshall Lochbaum
77dfaf75a4 Fix •bit._cast handling of boolean output with shared or slice input 2022-02-04 17:21:24 -05:00
Marshall Lochbaum
69e496f7fa Avoid •bit._cast aliasing, and all copying by using slices 2022-02-04 16:23:17 -05:00
Marshall Lochbaum
a21efec47e •bit._cast prototype 2022-02-04 14:47:13 -05:00
dzaima
2e2dcb3134 ⌜ impls 2022-01-23 17:38:55 +02:00
dzaima
d2682c595b native dyadic ˝ 2022-01-22 19:34:40 +02:00
dzaima
3f79fc3773 native monadic ˝ 2022-01-22 19:30:24 +02:00
dzaima
48e9e3d655 stdin for •SH 2022-01-18 02:32:20 +02:00
dzaima
8403f82b9f more singeli build memory leak fix 2022-01-12 19:52:16 +02:00
dzaima
5d3c801fb5 fix memory leak in singeli arith fallback & each fills 2022-01-12 16:10:41 +02:00
dzaima
c4136d4a53 fix /⁼ with 64-bit usz 2022-01-11 18:54:40 +02:00
dzaima
5cde913c78 •CurrentError 2022-01-08 21:55:19 +02:00
dzaima
588350d85b native dyadic ˘ 2022-01-06 04:39:09 +02:00
dzaima
6c4208f79d remove unused rt_merge 2022-01-06 01:22:31 +02:00
dzaima
b6f43ec4be deduplicate a bit 2022-01-01 22:51:14 +02:00
dzaima
2602a6499d rename block types 2021-12-31 17:48:19 +02:00
dzaima
08f04a8521 pass untagged pointer to under functions 2021-12-30 21:52:29 +02:00
dzaima
14d298231f all native builtins 2021-12-30 02:28:20 +02:00
dzaima
d68e278083 move nsTime to its own file 2021-12-29 19:49:16 +02:00
dzaima
81a47f1386 fix genRuntimeSrc 2021-12-28 00:07:08 +02:00
dzaima
0552ffbf37 make sorting set sorted flags 2021-12-25 18:24:22 +02:00
dzaima
04a530a532 fix ⍉f64arr 2021-12-20 18:29:20 +02:00
dzaima
44dc602425 native rank>2 ⍉ 2021-12-20 00:52:53 +02:00
dzaima
7cc88fae9c native rank 2 ⍉ 2021-12-19 16:43:37 +02:00
dzaima
88c5a16678 native monadic ⎉ 2021-12-19 15:26:21 +02:00
dzaima
d873ce0d81 fix hash for bitarrs 2021-12-19 14:55:21 +02:00
dzaima
9054cf0b54 make vec_join be mostly not inlined 2021-12-19 01:45:05 +02:00
dzaima
1770251bad singeli + & - & × 2021-12-18 22:30:00 +02:00
dzaima
0c5b98772c m_harrs → M_HARR 2021-12-17 18:04:19 +02:00
Marshall Lochbaum
7b2c79fb87 Implement •primitives 2021-12-16 17:57:05 -05:00
Marshall Lochbaum
89e8cf5a6c Implement •ReBQN 𝕩.primitive processing 2021-12-16 14:29:19 -05:00
Marshall Lochbaum
9e5f488642 Allow custom compiler/runtime for non-REPL •ReBQN too 2021-12-16 14:29:19 -05:00
Marshall Lochbaum
4d394ea441 Store compiler and runtime in •ReBQN result 2021-12-16 14:29:19 -05: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
9044cd0ef0 allow high-rank 'a' in native F⌾(a⊸⊏) 2021-12-12 23:33:02 +02:00
dzaima
1b1fe2ba57 BMI2 bitarr/bitarr 2021-12-12 23:11:07 +02:00
dzaima
56d148832e support unsorted argument for /⁼ 2021-12-12 17:25:14 +02:00
dzaima
b9232a1f68 fix handling of first element in /⁼ 2021-12-06 11:01:52 +02:00
dzaima
4f66b6b88a native namespace creation 2021-11-29 16:44:20 +02:00
dzaima
ef5864afbc global name list 2021-11-29 00:21:41 +02:00
dzaima
4af5f3d4a6 store Value* as gc roots 2021-11-28 21:56:01 +02:00
dzaima
94e38e7162 fix import A →import B; import A 2021-11-26 12:23:46 +02:00
dzaima
4697b91b1e fix >2 repeated imports & error on cyclical importing 2021-11-26 00:25:11 +02:00
dzaima
d032c97b13 cache monadic •Import 2021-11-26 00:01:37 +02:00
dzaima
0389eda29b inverse modifiers 2021-11-25 00:24:16 +02:00
dzaima
b76d30d4bc add •state and •name 2021-11-24 23:03:17 +02:00
dzaima
097f39da15 make •Type throw on bi_optOut 2021-11-23 10:30:13 +02:00
dzaima
77144cd79c •math function inverses 2021-11-23 01:10:08 +02:00
dzaima
b000576572 native /⁼ 2021-11-22 00:24:59 +02:00
dzaima
ab49bb5d3d native -⁼ 2021-11-21 22:54:07 +02:00
dzaima
f155792856 native ⁼ 2021-11-21 21:27:08 +02:00
dzaima
f55e349999 inverse headers 2021-11-21 21:03:14 +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
3ba3558c93 fills for monadic ⋈ 2021-11-13 23:00:36 +02:00
dzaima
cd866e1e45 lazy fallback to runtime on ∾ errors 2021-11-06 17:30:01 +02:00
dzaima
049188d8a6 complete native ⋈ 2021-11-03 20:44:43 +02:00