David Mak
|
6892a4848e
|
core/typedef: WIP - Add OptionType and NDArrayType
|
2024-06-27 16:35:15 +08:00 |
David Mak
|
da4dec08a5
|
core/typedef: Add GenericObjectType
|
2024-06-27 16:34:32 +08:00 |
lyken
|
5b11a1dbdd
|
core: support tuple and int32 input for np_empty, np_ones, and more
|
2024-06-27 14:30:17 +08:00 |
abdul124
|
134af79fd6
|
core: add support for class attributes
|
2024-06-25 16:06:33 +08:00 |
abdul124
|
7fe2c3496c
|
core: add attribute field to class definition
|
2024-06-25 16:06:33 +08:00 |
lyken
|
06e9d90d57
|
apply clippy changes
|
2024-06-21 14:14:01 +08:00 |
lyken
|
e85f4f9bd2
|
core: refactor top_level::builtins::get_builtins()
|
2024-06-18 11:06:25 +08:00 |
David Mak
|
82091b1be8
|
meta: Apply clippy changes
|
2024-06-17 14:10:31 +08:00 |
lyken
|
2abe75d1f4
|
core: remove code dup with `make_exception_fields`
|
2024-06-17 12:01:48 +08:00 |
lyken
|
676412fe6d
|
apply cargo fmt
|
2024-06-14 09:46:42 +08:00 |
lyken
|
fed1361c6a
|
core: rename to_var_map to into_var_map
|
2024-06-13 16:59:10 +08:00 |
lyken
|
f026b48e2a
|
core: refactor to use `TypeVarId` and `TypeVar`
|
2024-06-13 16:59:10 +08:00 |
lyken
|
dc874f2994
|
core: use `PrimDef` simple names in make_primitives()
|
2024-06-13 16:58:32 +08:00 |
David Mak
|
23974feae7
|
meta: Restrict number of allowed lints
|
2024-06-12 16:10:57 +08:00 |
lyken
|
c4420e6ab9
|
core: refactor `get_builtins()`
|
2024-06-12 15:09:20 +08:00 |
lyken
|
fd36f78005
|
core: refactor `PrimitiveDefinitionId` into enum `PrimDef`
|
2024-06-12 15:01:01 +08:00 |
lyken
|
8168692cc3
|
apply cargo fmt
|
2024-06-12 14:45:03 +08:00 |
David Mak
|
6153f94b05
|
core/numpy: Implement codegen for np_array
|
2024-06-11 16:42:11 +08:00 |
David Mak
|
4730b595f3
|
core/builtins: Add np_array function
|
2024-06-11 16:42:08 +08:00 |
David Mak
|
82bf14785b
|
core: Add multidimensional array helpers
|
2024-06-11 15:30:06 +08:00 |
David Mak
|
210d9e2334
|
core: Add more creator functions for ProxyType
|
2024-06-11 15:26:37 +08:00 |
David Mak
|
3acdfb304d
|
meta: Apply clippy suggestions
|
2024-06-11 14:58:32 +08:00 |
lyken
|
08129cc635
|
nac3core: add TopLevelComposer::new builtin check's assertion msg
|
2024-06-05 15:30:02 +08:00 |
David Mak
|
520e1adc56
|
core/builtins: Add np_minimum/np_maximum
|
2024-05-09 15:01:20 +08:00 |
David Mak
|
73e81259f3
|
core/builtins: Add np_min/np_max
|
2024-05-09 15:01:20 +08:00 |
David Mak
|
30c6cffbad
|
core/builtins: Refactored numpy builtins to accept scalar and ndarrays
|
2024-05-06 15:38:29 +08:00 |
David Mak
|
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 |
David Mak
|
7195476edb
|
core/builtins: Add llvm_intrinsics prefix
|
2024-05-06 13:21:54 +08:00 |
David Mak
|
eecba0b71d
|
core: Add GenCall::create_dummy
A simple abstraction for GenCalls that are already handled elsewhere.
|
2024-05-06 13:21:54 +08:00 |
David Mak
|
f58c3a11f8
|
core/builtins: Rework handling of PrimitiveStore-Unifier tuples
|
2024-05-06 13:21:54 +08:00 |
David Mak
|
d0766a116f
|
core: Remove Box from GenCallCallback type alias
So that references to the function type can be taken.
|
2024-05-06 13:21:54 +08:00 |
David Mak
|
64a3751fc2
|
core: Remove custom function type definitions for ndarray operators
|
2024-05-06 13:21:54 +08:00 |
David Mak
|
5dfcc63978
|
core/classes: Take reference of indexes
|
2024-04-16 17:20:24 +08:00 |
David Mak
|
a920fe0501
|
core: Implement elementwise comparison operators
|
2024-04-03 00:07:33 +08:00 |
David Mak
|
727a1886b3
|
core: Implement elementwise unary operators
|
2024-04-03 00:07:33 +08:00 |
David Mak
|
6af13a8261
|
core: Implement elementwise binary operators
Including immediate variants of these operators.
|
2024-04-03 00:07:33 +08:00 |
David Mak
|
3a6c53d760
|
core/toplevel/numpy: Split ndarray type var utilities
|
2024-04-03 00:07:33 +08:00 |
David Mak
|
8f1497df83
|
core/helper: Add PrimitiveDefinitionIds::iter
|
2024-04-02 16:49:12 +08:00 |
David Mak
|
5ca2dbeec8
|
core/typedef: Add Type::obj_id to replace get_obj_id
|
2024-04-02 16:49:10 +08:00 |
David Mak
|
d5f4817134
|
core/builtins: Fix len() on ndarrays
|
2024-04-01 16:48:24 +08:00 |
David Mak
|
13f06f3e29
|
core: Refactor VarMap to IndexMap
This is the only Map I can find that preserves insertion order while
also deduplicating elements by key.
|
2024-03-22 15:51:23 +08:00 |
David Mak
|
1b77e62901
|
core: Split numpy into codegen and toplevel
|
2024-03-22 15:07:28 +08:00 |
David Mak
|
c8866b1534
|
core/classes: Rename get_* functions to remove prefix
As suggested by Rust API Guidelines.
|
2024-03-21 15:46:10 +08:00 |
David Mak
|
c3b122acfc
|
core: Implement `ndarray.copy`
|
2024-03-07 14:59:13 +08:00 |
David Mak
|
ebf86cd134
|
core: Use size_t for accessing array elements
|
2024-03-07 14:59:13 +08:00 |
David Mak
|
cccd8f2d00
|
core: Fix ndarray_eye not preserving signness of offset
|
2024-03-07 14:59:13 +08:00 |
David Mak
|
96b7f29679
|
core: Implement `ndarray.fill`
|
2024-03-07 14:59:13 +08:00 |
David Mak
|
3d2abf73c8
|
core: Replace ndarray_init_dims IRRT impl with IR impl
Implementation of that function in IR allows for more flexibility in
terms of different integer type widths.
|
2024-03-07 14:59:13 +08:00 |
David Mak
|
b26cb2b360
|
core: Express member func def IDs as offsets from class def ID
|
2024-03-06 12:24:39 +08:00 |
David Mak
|
2317516cf6
|
core: Use tvars from ndarray for class definition
|
2024-03-04 23:58:02 +08:00 |