2ec449545e
nac3core: fix test assertion
2022-07-21 09:56:58 +08:00
6eb433b2e3
nac3core: fix typo and remove the unnecessary 'return' statement
2022-07-21 09:44:05 +08:00
c43be7388d
nac3core: update comment
2022-07-20 16:58:04 +08:00
ad12b7e958
update comment
2022-07-20 16:56:41 +08:00
510eaae73a
nac3core: Add test for toplevel::composer::build_constructor_lookup
2022-07-20 16:50:09 +08:00
a6bd6d5567
nac3core: src/toplevel/composer.rs fix the constructor propagation bug in function build_constructor_lookup
2022-07-20 16:49:04 +08:00
7d68efc599
nac3core: Add field constructor_lookup(HashMap) to the TopLevelComposer and the function build_constructor_lookup to build the HashMap
2022-07-20 14:29:26 +08:00
71308ae5d4
nac3core: Add field constructor_lookup(HashMap) to the TopLevelComposer and the function build_constructor_lookup to build the HashMap
2022-07-20 14:25:41 +08:00
ebd25af38b
nac3standalone: allow classes without explicit init ( #221 )
...
Reviewed-on: #304
Co-authored-by: z78078 <cc@m-labs.hk>
Co-committed-by: z78078 <cc@m-labs.hk>
2022-07-07 10:36:25 +08:00
96b3a3bf5c
work around random segmentation fault ( #275 )
...
Reviewed-on: #302
Co-authored-by: z78078 <cc@m-labs.hk>
Co-committed-by: z78078 <cc@m-labs.hk>
2022-07-04 18:06:36 +08:00
a18d095245
nac3core: codegen fix call parameter type error
2022-07-04 14:39:33 +08:00
5d5e9a5e02
nac3core: fix codegen error of inheritance
2022-06-01 17:58:16 +08:00
c4ab2855e5
nac3core: pretty print codegen panic error
2022-05-30 04:09:21 +08:00
ffac37dc48
nac3core: fix exception type in primitive store
2022-05-29 19:14:00 +08:00
76473152e8
nac3core: fix llvm.expect intrinsic name
...
this might be one of the causes for the random segfault bug
2022-05-27 04:23:49 +08:00
096f4b03c0
nac3core: fix assignment
2022-05-14 02:30:08 +08:00
a022005183
nac3core: fix broken tests
2022-05-11 03:53:53 +08:00
325ba0a408
nac3core: add debug info
2022-05-11 03:53:53 +08:00
3f327113b2
update dependencies, use upstream inkwell
2022-04-27 15:41:46 +08:00
a321b13bec
fix typos
2022-04-27 11:08:10 +08:00
48cb485b89
nac3core: show outer type info in type error messages
...
Reviewed-on: #274
Co-authored-by: ychenfo <yc@m-labs.hk>
Co-committed-by: ychenfo <yc@m-labs.hk>
2022-04-22 15:31:55 +08:00
85f21060e4
update to LLVM 14
2022-04-18 18:47:20 +08:00
1eac111d4c
cleanup
2022-04-18 15:55:37 +08:00
711c3d3303
nac3core: support custom operators
2022-04-18 15:31:56 +08:00
wylited
35b6459c58
nac3core: replace paramter with parameter
2022-04-13 15:42:26 +08:00
e94b25f544
spelling ( #264 )
...
Co-authored-by: wylited <ds@m-labs.hk>
Co-committed-by: wylited <ds@m-labs.hk>
2022-04-13 11:32:31 +08:00
1e7abf0268
fix tests
2022-04-12 10:06:41 +08:00
f5a6d29106
update insta snapshots
2022-04-12 09:56:49 +08:00
ca07cb66cd
format typevars consistently
2022-04-12 09:28:17 +08:00
722e3df086
nac3core, artiq: optimize kernel invariant for tuple index
2022-04-11 14:58:40 +08:00
ad9ad22cb8
nac3core: optimize unwrap KernelInvariant
2022-04-11 14:58:35 +08:00
f66f66b3a4
nac3core, artiq: remove unnecessary ptr casts
2022-04-10 01:28:46 +08:00
0e0871bc38
nac3core, artiq: to_basic_value_enum takes an argument indicating the expected type
2022-04-10 01:28:22 +08:00
26187bff0b
nac3core: add missing bound check and negative index handling for list subscription assignment
2022-04-09 04:56:31 +08:00
c29cbf6ddd
nac3core: add bound check for list slice
2022-04-05 18:21:46 +08:00
7443c5ea0f
nac3core: add location information to codegen context
2022-04-05 18:21:46 +08:00
710904f975
nac3core: fix powi with negative integer power
2022-04-04 22:10:56 +08:00
2edeb31d21
nac3core: do not get llvm value too eagerly for kernel invariant
2022-03-31 10:28:16 +08:00
c3156afebd
nac3core: fix broken tests
2022-03-30 04:05:47 +08:00
388c9b7241
nac3core: better check and err msg for default param
2022-03-30 04:05:47 +08:00
6ab73a223c
nac3core/artiq: support default param of option type
2022-03-30 04:05:47 +08:00
a38cc04444
nac3core: assert statement
2022-03-29 06:56:40 +08:00
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: #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
8d7e300a4a
nac3core: do not use const struct for tuple
2022-03-27 10:13:17 +08:00
10d623e36f
nac3core/artiq: fix tuple representation
2022-03-27 07:47:14 +08:00
1a82d296e7
nac3core/codegen: prevent users from modifying loop counter
...
Fixes #211
2022-03-26 20:58:37 +08:00
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
26a4834254
fix warnings
2022-03-26 18:52:08 +08:00
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
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