Commit Graph

64 Commits

Author SHA1 Message Date
dzaima
f76836aedd clean up arithd.c & slightly improve non-Singeli impls 2023-02-17 16:43:07 +02:00
dzaima
afe6707654 dyarith NEON support 2023-01-22 03:27:41 +02:00
dzaima
a34bb0a433 don't unroll libc math loops 2022-12-28 16:51:17 +02:00
dzaima
bb7fe02a45 separate checks for x86-64 & NEON Singeli importing
& restrict the processed Singeli files on NEON to the ones supported
2022-12-24 15:27:53 +02:00
dzaima
09b3279958 unified Singeli including mechanism 2022-12-18 01:54:07 +02:00
dzaima
d383fe57a7 clean up whitespace 2022-11-24 01:26:35 +02: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
58cd6f0f4e Other useful math: log2 log10 log1p expm1 hypot 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
36111276c6 •math.Atan2 2022-11-05 20:36: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
47c4a53da4 fix WARN_SLOW build 2022-09-12 18:19:05 +03:00
dzaima
96ca9092ba attempt at better bit_sel dispatch 2022-09-08 00:37:44 +03:00
dzaima
59e947cc20 more consistent type checking & conversion functions 2022-09-07 23:56:03 +03:00
dzaima
c0b2164dc8 new array-atom arith 2022-09-05 22:52:53 +03:00
dzaima
7f00d54372 rearrange arithd.c a bit more 2022-09-04 00:35:58 +03:00
dzaima
0139c5f58d separate dyadic arith cases 2022-09-02 14:01:35 +03:00
dzaima
a637adadd9 rearrange arithd.c in preparation for separating its cases 2022-09-02 13:10:04 +03:00
dzaima
1b8bd0707e make dyarith array-array dispatch its own function 2022-09-01 22:22:13 +03:00
dzaima
dad47cf391 move arith_recd to a noinline function 2022-09-01 18:51:02 +03:00
dzaima
e72c7dc937 faster ÷ ⋆ √ | ⋆⁼ on i8 & i16 arrays 2022-09-01 16:06:52 +03:00
dzaima
b37f620889 disable manual array F character loops when not running singeli 2022-08-29 19:46:41 +03:00
dzaima
777c5cc1a5 rename things 2022-08-29 19:05:34 +03:00
dzaima
ce5ece34e1 new arith 2022-08-28 23:28:06 +03:00
dzaima
4ed814e395 cleanup of new field reading macros 2022-08-20 09:04:22 +03:00
dzaima
1694bfb7d2 s?p?rnk(x) → S?P?RNK(x) 2022-08-20 08:36:59 +03:00
dzaima
d2a4efe4b5 x->sh → SH(x) / PSH(x) 2022-08-20 08:30:07 +03:00
dzaima
e6b4f85662 x->ia → IA(x) / PIA(x) 2022-08-20 08:30:03 +03:00
dzaima
837372295d small simplification 2022-07-02 03:52:34 +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
a108ef2ce7 use eqShPart in arithd.c 2022-05-29 14:44:44 +03:00
dzaima
69067b8fcc decG round 2 2022-04-07 15:15:28 +03:00
dzaima
49ff5a04ff singeli ≡ 2022-04-02 16:58:35 +03:00
dzaima
5cd19eafe8 vectorized dyadic arith tail element handling 2022-02-27 18:46:35 +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
1770251bad singeli + & - & × 2021-12-18 22:30:00 +02:00
dzaima
e7662b0f6a separate array & scalar cases in arith builtins 2021-12-13 00:16:23 +02:00
dzaima
6860ba5f9d make some more flags compile 2021-10-11 22:39:52 +03:00
dzaima
5224e03a1d deduplicate & and | impls in arithd.c 2021-10-03 23:31:37 +03:00
dzaima
1bca264db8 bitarrs 2021-10-03 23:18:30 +03:00
dzaima
797a848ed4 warn slow for unknown scans & folds & ⍋ 2021-09-26 01:04:18 +03:00
dzaima
44c07fd6ab integer ⌊⌈ 2021-09-18 13:28:06 +03:00
dzaima
23f2f4303b more mixed type arith 2021-09-11 00:34:10 +03:00
dzaima
0a1cda63f5 mixed i8arr/i32arr arithd 2021-09-10 20:31:19 +03:00
dzaima
f8962c1eb9 use generic squeeze for arith 2021-09-09 17:30:40 +03:00
dzaima
b1b066ce5c atom-arr arith 2021-09-05 23:04:14 +03:00