pca006132
1257a80ed1
escape analysis implementation
...
buggy for now
2022-04-07 23:02:07 +08:00
pca006132
c93f79f94a
basic escape analysis for assignment statements
2022-04-05 22:19:23 +08:00
pca006132
10c4544553
nac3core/typecheck: start implementing escape analysis
2022-04-04 22:42:22 +08:00
pca006132
4f66bdeda9
Merge pull request 'nac3core: do not get llvm value too eagerly for kernel invariant' ( #253 ) from kernel_invariant_fix into master
...
Reviewed-on: M-Labs/nac3#253
2022-03-31 12:48:49 +08:00
Sebastien Bourdeauducq
57369896d7
update dependencies
2022-03-31 10:40:18 +08:00
ychenfo
2edeb31d21
nac3core: do not get llvm value too eagerly for kernel invariant
2022-03-31 10:28:16 +08:00
ychenfo
b8ef44d64e
nac3standalone: add test for default param
2022-03-30 04:05:47 +08:00
ychenfo
c3156afebd
nac3core: fix broken tests
2022-03-30 04:05:47 +08:00
ychenfo
388c9b7241
nac3core: better check and err msg for default param
2022-03-30 04:05:47 +08:00
ychenfo
e52d7fc97a
nac3artiq: resolve unsigned int host variable as defautl param
2022-03-30 04:05:47 +08:00
ychenfo
6ab73a223c
nac3core/artiq: support default param of option type
2022-03-30 04:05:47 +08:00
ychenfo
a38cc04444
nac3core: assert statement
2022-03-29 06:56:40 +08:00
ychenfo
1f5826d352
fix ternary if ( #250 )
...
Use store and load to handle if expression as the blocks might be changed when generating sub-expressions.
Reviewed-on: M-Labs/nac3#250
Co-authored-by: ychenfo <yc@m-labs.hk>
Co-committed-by: ychenfo <yc@m-labs.hk>
2022-03-29 06:54:00 +08:00
Sebastien Bourdeauducq
94eebde4ea
README: add note about MSVC Python
2022-03-28 10:45:01 +08:00
Sebastien Bourdeauducq
63ec382673
README: update Windows instructions
2022-03-27 19:36:02 +08:00
Sebastien Bourdeauducq
0ca1a7bedb
windows: work around broken LLD install script
2022-03-27 19:14:02 +08:00
Sebastien Bourdeauducq
201ca3f63d
Revert "nac3artiq: use lld.exe on Windows"
...
This reverts commit 19182759cd
.
2022-03-27 19:09:11 +08:00
Sebastien Bourdeauducq
19182759cd
nac3artiq: use lld.exe on Windows
2022-03-27 18:41:38 +08:00
Sebastien Bourdeauducq
edd039abdc
windows: build LLD
2022-03-27 18:41:23 +08:00
Sebastien Bourdeauducq
3852cc1058
windows: don't fixup LLVM
2022-03-27 18:38:23 +08:00
Sebastien Bourdeauducq
0600ee8efa
nac3artiq: use correct lld invokation on Windows
2022-03-27 18:25:14 +08:00
ychenfo
bed33a7421
nac3standalone: add tests for tuple
2022-03-27 10:31:20 +08:00
ychenfo
0d2b844a2e
nac3artiq: avoid getting tuple as pointer value
2022-03-27 10:31:20 +08:00
ychenfo
8d7e300a4a
nac3core: do not use const struct for tuple
2022-03-27 10:13:17 +08:00
ychenfo
10d623e36f
nac3core/artiq: fix tuple representation
2022-03-27 07:47:14 +08:00
ychenfo
000b128551
nac3artiq: cast none to correct ptr type ( #241 )
2022-03-26 23:32:50 +08:00
Sebastien Bourdeauducq
e4581a6d9b
nac3standalone/demo: fix return type in loop.py
2022-03-26 21:10:12 +08:00
pca006132
1a82d296e7
nac3core/codegen: prevent users from modifying loop counter
...
Fixes #211
2022-03-26 20:58:37 +08:00
pca006132
bf067e2481
nac3artiq: implement attribute writeback
...
We will only writeback attributes that are supported by the current RPC
implementation: primitives, tuple and lists of lists... of primitives.
2022-03-26 20:13:58 +08:00
ychenfo
ba8ed6c663
nac3artiq: handle recursive types properly
2022-03-26 18:54:21 +08:00
ychenfo
26a4834254
fix warnings
2022-03-26 18:52:08 +08:00
Sebastien Bourdeauducq
1ad4b0227c
windows: fix src location
2022-03-26 15:46:21 +08:00
Sebastien Bourdeauducq
6288a66dc5
windows: fix cargo lockfile location
2022-03-26 15:23:31 +08:00
Sebastien Bourdeauducq
de4320eefb
improve package names
2022-03-26 15:15:59 +08:00
Sebastien Bourdeauducq
a380cd5010
move all Nix files to one folder
2022-03-26 15:13:43 +08:00
ychenfo
80631fc92b
Option type support ( #224 )
...
Co-authored-by: ychenfo <yc@m-labs.hk>
Co-committed-by: ychenfo <yc@m-labs.hk>
2022-03-26 15:09:15 +08:00
Sebastien Bourdeauducq
55db05fdbb
update dependencies
2022-03-24 22:30:15 +08:00
pca006132
24a26b53ae
nac3core/toplevel: fixed broken tests
...
We should not include class type variables in functions type variables.
2022-03-24 21:33:09 +08:00
pca006132
1084ba2158
nac3core: fixed typevar with finite range
...
1. Function type variables should not include class type variables,
because they are not bound to the function.
2. Defer type variable constraint evaluation until we get all fields
definition.
2022-03-24 21:31:51 +08:00
ychenfo
be75fa7368
nac3core: fix assign to constant
2022-03-24 07:13:13 +08:00
Sebastien Bourdeauducq
ec52128a4a
indentation
2022-03-23 10:45:28 +08:00
Sebastien Bourdeauducq
b10b49e39a
windows: run cargo tests
2022-03-23 09:53:45 +08:00
Sebastien Bourdeauducq
d92ce201d3
runkernel: fix windows build
2022-03-23 09:32:58 +08:00
Sebastien Bourdeauducq
8b485f552b
windows: set PYO3_CONFIG_FILE, use exec in wine-msys2
2022-03-23 09:22:33 +08:00
pca006132
d9be8d3978
nac3core/typecheck/unification_table: fixed snapshot restore bug
...
Closes 229
2022-03-23 00:25:10 +08:00
pca006132
41d62f7325
nac3core/toplevel: fixed typevar substitution bug
2022-03-23 00:25:10 +08:00
Sebastien Bourdeauducq
4400d9b57d
windows: attempt to disable libffi further
2022-03-22 22:52:53 +08:00
Sebastien Bourdeauducq
8ee5db7462
Revert "windows: numpy is not necessary for build"
...
...but it is nice to have in the development shell.
This reverts commit 1114d11b34
.
2022-03-22 22:15:18 +08:00
Sebastien Bourdeauducq
6d9b3abcd7
nicer MSYS2 development shell
2022-03-22 22:14:46 +08:00
Sebastien Bourdeauducq
f11a0776e7
README: fix build name
2022-03-22 22:12:23 +08:00