chriseth
ac0ccff780
Array literals in expressions.
2023-09-26 10:54:16 +02:00
chriseth
a7c65e0990
Lambda expressions
2023-09-25 17:28:38 +02:00
chriseth
18143f7f7a
Generic let statement.
2023-09-25 17:28:38 +02:00
chriseth
3b31c670a7
Unify parsed and analyzed expressions.
2023-09-19 16:33:56 +02:00
Thibaut Schaeffer
17d22ed552
Module system ( #558 )
...
* implement import system
* address review comments
* use folder in macro expansion
* use folder in file loader
* use folder in canonicalizer
* use parse_absolute_path
2023-09-13 17:47:29 +02:00
chriseth
d0821e4119
Use absolute path to test dir. ( #596 )
2023-09-12 17:44:22 +02:00
chriseth
103e2e7678
Add comparisons and logical operators.
2023-09-07 15:21:58 +02:00
chriseth
f129f80840
Make instruction bodies contain pil statements. ( #531 )
2023-09-05 19:59:22 +02:00
Thibaut Schaeffer
d77bb0cc6c
Static to static calls ( #464 )
...
* implement static-to-static calls
* fix conflict, comment out link to make book test pass
* address review comments, fix test
* address review, fix and test display for params
* address review comments
* ban operations on vms, instructions on cms
* rewrite "powdr asm" to "powdr-asm" everywhere
* fix lint
* address review comments
2023-09-05 12:56:23 +02:00
Thibaut Schaeffer
b80686a880
VM to VM calls ( #392 )
...
* implement call from vm to vm
* address review
* reduce diff in pilgen
* address review
* address more comments
* clean up readme, fix tests
* keep only one machine type for the block enforcer readme
2023-08-21 16:23:25 +02:00
Thibaut Schaeffer
8552095667
introduce more typed pil polynomial types ( #504 )
2023-08-18 14:28:02 +02:00
schaeff
497ea636ec
vm to block machine calls
2023-08-01 11:42:24 +02:00
schaeff
fc8ba429df
modular powdr syntax, basic romgen, and basic linker for single machine
2023-07-10 17:56:29 +02:00
chriseth
48e454fa25
Parse file and line info in powdr asm.
2023-06-26 12:38:02 +02:00
Lucas Clemente Vella
ac12c92359
Enabling logging in tests.
2023-06-22 16:27:32 +01:00
schaeff
3bbdd1c243
improve compiler pipeline
2023-06-19 16:01:02 +02:00
schaeff
d99eddd58a
batch labels with the following statement
2023-06-14 02:02:35 +02:00
chriseth
f52e032b93
Use visitor
2023-06-07 12:13:55 +02:00
chriseth
7a9046be6c
Visitor for statements.
2023-06-07 12:13:55 +02:00
chriseth
46042b471a
Add macros to assembly.
2023-06-07 12:13:55 +02:00
chriseth
847e3cf37e
Allow assembly inside pil.
2023-05-22 12:51:10 +02:00
schaeff
0b23b5bd40
make everything generic over FieldElementTrait
2023-05-12 14:56:30 +02:00
schaeff
91d7a798bc
use array-based bigint for bitwise
2023-05-11 11:28:38 +02:00
chriseth
7c1fa49f12
Fix grammar.
2023-05-10 18:10:06 +02:00
schaeff
9f700d7f97
restrict pc, update asm to finish with infinite loop
2023-04-26 14:20:41 +02:00
chriseth
56f002ae2c
Optional trailing comma for match arms.
2023-04-24 14:47:12 +02:00
schaeff
7aa52d8b9a
replace 0/0 hack with match
2023-04-24 13:59:12 +02:00
schaeff
6616f66d10
workaround regex feature unification issue
2023-04-21 18:39:13 +02:00
schaeff
2e30056934
rename test data dir
2023-04-21 17:25:16 +02:00
schaeff
82cfa54696
split into small crates
2023-04-21 17:16:22 +02:00