c58ce9c3a9
[core] codegen/types: Implement NDArray in terms of i8*
...
Better aligns with the future implementation of ndstrides.
2024-11-21 14:27:00 +08:00
a4f53b6e6b
[core] codegen: Refactor ProxyType and ProxyValue
...
Accepts generator+context object for generic type checking. Also
implements more default trait impl for easier delegation.
2024-11-19 13:46:25 +08:00
9d9ead211e
[core] Move Proxies to their own modules
2024-11-19 13:46:23 +08:00
a98f33e6d1
[meta] Reorganize order of use declarations - Phase 2
...
Some more rules:
- For module-level imports, prefer no prefix > super > crate.
- Use crate instead of super if super refers to the crate-level module
2024-10-17 15:57:33 +08:00
fe06b2806f
[meta] Reorganize order of use declarations
...
Use declarations are now grouped into 4 groups:
- Declarations from the standard library
- Declarations from external crates
- Declarations from other crates in this project
- Declarations from within this module
Furthermore, all use declarations are grouped together to enhance
readability. super::super is also replaced by an equivalent crate::
declaration.
2024-10-04 12:52:01 +08:00
d9f96dab33
[core] Add codegen_unreachable
2024-08-23 13:10:55 +08:00
2cf64d8608
apply clippy comment changes
2024-08-21 11:21:10 +08:00
12c4e1cf48
core/toplevel/builtins: Add support for len() on tuples
2024-08-13 15:02:59 +08:00
9b988647ed
core/toplevel/builtins: Extract len() into builtin function
2024-08-13 15:02:59 +08:00
7e3d87f841
core/codegen: fix bug in call_ceil function
2024-08-07 16:40:55 +08:00
63d2b49b09
core: remove np_linalg_matmul
2024-08-05 11:44:55 +08:00
1c72698d02
core: add np_linalg_det and np_linalg_matrix_power functions
2024-07-31 18:02:54 +08:00
54f883f0a5
core: implement np_dot using LLVM_IR
2024-07-31 15:53:51 +08:00
4bb00c52e3
core/builtin_fns: improve error reporting
2024-07-31 13:21:31 +08:00
2242c5af43
core: add linalg methods
2024-07-29 16:48:06 +08:00
6d171ec284
core: Add label name and hooks to gen_for functions
2024-07-26 13:35:40 +08:00
6c10e3d056
core: cargo clippy
2024-07-12 21:18:53 +08:00
2dbc1ec659
cargo fmt
2024-07-12 21:16:38 +08:00
2e01b77fc8
core: refactor np_max/np_min functions
2024-07-12 18:18:54 +08:00
f062ef5f59
core/llvm_intrinsic: replace roundeven with rint
2024-07-07 14:24:18 +08:00
075536d7bd
core: Add BreakContinueHooks for gen_for_callback
2024-07-04 15:32:18 +08:00
d89146aa02
core: use no_run on builtin_fns docs
2024-06-20 13:53:25 +08:00
e36af3b0a3
core: reduce code duplication in codegen/builtin_fns ( #422 )
...
Used macros to generate some unary math functions.
Reviewed-on: M-Labs/nac3#422
Reviewed-by: David Mak <chmakac@connect.ust.hk>
Co-authored-by: lyken <lyken@m-labs.hk>
Co-committed-by: lyken <lyken@m-labs.hk>
2024-06-20 12:48:44 +08:00
fd36f78005
core: refactor PrimitiveDefinitionId
into enum PrimDef
2024-06-12 15:01:01 +08:00
8168692cc3
apply cargo fmt
2024-06-12 14:45:03 +08:00
f0ab1b858a
core: Refactor class abstractions
...
- Introduce new Type abstractions
- Rearrange some functions
2024-06-06 13:45:51 +08:00
b6ff75dcaf
core/irrt: Add support for calculating partial size of NDArray
2024-06-03 16:40:05 +08:00
520e1adc56
core/builtins: Add np_minimum/np_maximum
2024-05-09 15:01:20 +08:00
73e81259f3
core/builtins: Add np_min/np_max
2024-05-09 15:01:20 +08:00
30c6cffbad
core/builtins: Refactored numpy builtins to accept scalar and ndarrays
2024-05-06 15:38:29 +08:00
51671800b6
core/builtins: Extract codegen portion into functions
...
We will need to reuse them when implementing elementwise function
application for ndarrays.
2024-05-06 13:21:54 +08:00