Commit Graph

1000 Commits

Author SHA1 Message Date
dzaima
6aada8338e proper state restore after failed allocation in codegen 2022-06-03 17:17:30 +03:00
dzaima
86fc9041fa print fallback stacktrace code to stderr 2022-06-03 16:24:43 +03:00
dzaima
73ff6fe722 add interrupt check to allocation slow slow path 2022-06-03 16:04:48 +03:00
dzaima
572bc04459 move interrupt check to its own header 2022-06-03 16:02:02 +03:00
dzaima
7a21f9ef73 experimental REPL interrupting 2022-06-03 15:38:32 +03:00
dzaima
47e4e68eee fix )profile@123 2022-06-03 14:47:43 +03:00
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
f1faff2866 fix FFI=1 build 2022-05-30 19:55:30 +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
df783d15a5 Align toKCells with rank_c1 changes 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
b8701d3502 more descriptive paths for self-hosted files 2022-05-29 22:20:50 +03:00
dzaima
960ae96591 show source-less & path-less entries in the profiler 2022-05-29 22:16:42 +03:00
dzaima
0380ee2a40 fix wasm builds 2022-05-29 22:05:04 +03:00
dzaima
e2fda60745 profiler 2022-05-29 22:02:50 +03:00
dzaima
5b2d221d0b bqn_type 2022-05-29 18:46:59 +03:00
dzaima
6033c2e90e flush pipes in g_pst 2022-05-29 16:12:14 +03:00
dzaima
a108ef2ce7 use eqShPart in arithd.c 2022-05-29 14:44:44 +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
093958f92a
Merge pull request #21 from dzaima/ffi
FFI
2022-05-28 01:29:21 +03:00
dzaima
622a5468d8 remove old ffi.h 2022-05-28 00:15:33 +03:00
dzaima
12631cb142 ffi tests 2022-05-27 23:57:56 +03:00
dzaima
662b23d808 add newline after fputs 2022-05-23 16:45:50 +03:00
dzaima
2775a92535 ffi: support **:type 2022-05-23 16:42:02 +03:00
dzaima
ec76a3cd70 ffi: *:t, scalar:t support for result 2022-05-22 16:13:13 +03:00
dzaima
e09cefd049 u64/i64 arguments, check whether integer arguments are exact 2022-05-22 14:42:16 +03:00
dzaima
af194b55ae make •FFI read relative to file 2022-05-22 04:42:59 +03:00
dzaima
c7e0b59e88 print more things to stderr 2022-05-22 04:40:13 +03:00
dzaima
e24f3c9df5 allow u64 result when lossless 2022-05-22 04:26:02 +03:00
dzaima
d0c63e4da4 fix FFI &f32 2022-05-22 04:02:55 +03:00
dzaima
1a8ee67d41 result & argument position selection 2022-05-21 23:47:02 +03:00
dzaima
af3c6b7857 add FFI=0 for presingeli build 2022-05-14 12:38:40 +03:00
dzaima
e7cc64aa89 nounroll 2022-05-14 12:26:42 +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
a938f32631 make FFI=1 do something 2022-05-12 14:36:10 +03:00
dzaima
d186294e28 allocate at least minimum size, rename functions 2022-05-11 22:56:14 +03:00
dzaima
09755e5e2c fix FFI : 2022-05-11 22:40:45 +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
5e67b87cf1 identity for f⌜ 2022-05-07 15:46:08 +03:00
dzaima
8c73112d6c pull latest singeli 2022-05-07 15:28:30 +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
f12e5fd1c0 move bqn_hash back to header 2022-05-01 04:36:59 +03:00
dzaima
3f787e3845 the tag includes type info anyways 2022-05-01 04:32:16 +03:00
dzaima
782750fd88 bqn_hash refactor 2022-05-01 04:21:17 +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
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
f8408f0ca6 check for System V calling convention OSes for JIT 2022-04-29 23:17:55 +03:00
dzaima
e979faea0e put mnvmExecBodyInline under a JIT_START check 2022-04-29 22:46:59 +03:00
dzaima
426187be07 make •SH run under cygwin 2022-04-29 22:38:18 +03:00
dzaima
de65d8a59b fix double-increment 2022-04-27 21:33:33 +03:00
dzaima
6abce22447 micro-optimize execBodyInline 2022-04-27 20:15:47 +03:00
dzaima
aefeb3c6fd fix emcc build 2022-04-26 19:32:29 +03:00
dzaima
3f92c32399 no-op ⥊vec 2022-04-25 18:10:37 +03:00
dzaima
de0352caf3 more usage of non-zero length for loops 2022-04-25 18:03:15 +03:00
dzaima
95455241a4 don't do useless tail case 2022-04-25 16:08:03 +03:00
dzaima
ab868a55f3 singeli copy 2022-04-25 03:06:11 +03:00
dzaima
37da98d871 singeli code cleanup 2022-04-21 22:05:47 +03:00
dzaima
7cd19c2840 use ~~ more 2022-04-21 19:35:35 +03:00
Marshall Lochbaum
3aea6aa9d0 Boolean prefix sum using AVX2 shuffling instead of pdep 2022-04-21 11:43:25 -04:00
dzaima
4c03520a07 use maskedLoop in dyarith 2022-04-21 18:33:36 +03:00
dzaima
113f72e86d singeli bitarr conversion to wider arrays 2022-04-21 18:27:20 +03:00
dzaima
b1fd85621a actually use maskstore 2022-04-21 17:48:05 +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
c3504ec42b proper includes 2022-04-21 04:13:14 +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
11d95b67d5 better error messages for no inverse header 2022-04-15 23:20:44 +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
767a2a9e38 make •file.MapBytes follow spec & fix error message 2022-04-10 05:12:21 +03:00