Commit Graph

2169 Commits

Author SHA1 Message Date
d0cd
b17702e019 Fix graph init; regen expectations 2023-02-05 12:46:20 -08:00
d0cd
899c12d85a Implement post-order codegen for structs and records 2023-02-05 12:46:20 -08:00
d0cd
a4d76c644a Refactor AST 2023-02-05 12:46:20 -08:00
d0cd
d91233f06e Implement cycle detection for structs and records 2023-02-05 12:46:20 -08:00
d0cd
5e331bbf36 Cleanup 2023-02-05 12:46:20 -08:00
d0cd
dd33eb024d Add test 2023-02-05 12:46:20 -08:00
d0cd
940d357c5e Cleanup 2023-02-05 12:46:20 -08:00
d0cd
9edbf0a74e Add tests for graph 2023-02-05 12:46:20 -08:00
d0cd
8b8c7b5c0a Get cycle if toposort fails 2023-02-05 12:46:20 -08:00
d0cd
9fbcdfc9f3 Add graph data structure 2023-02-05 12:46:19 -08:00
d0cd
063cb15d97 Reorg common module 2023-02-05 12:46:19 -08:00
ljedrz
b20308f049
chore: update the license headers (#2252)
Signed-off-by: ljedrz <ljedrz@gmail.com>
2023-02-02 14:27:06 -08:00
d0cd
b044b002a7 Check that functions cannot output records 2023-01-18 12:33:04 -08:00
Alessandro Coglio
5c223460c1 [parser] Extend and update some documentation. 2023-01-13 20:12:47 -08:00
Alessandro Coglio
1cbea97f27 [span] Extend and improve some doc. 2023-01-13 20:07:49 -08:00
dependabot[bot]
6df6bb5ef9
Bump serde from 1.0.150 to 1.0.152 (#2221) 2023-01-03 19:26:07 -08:00
Collin Chin
5a7feb28f7
Improve testing infrastructure (#2227)
* wip

* re-enable get_process call for test programs

* remove local tests

* clean up

* remove rust version from cargo.toml
2023-01-03 17:51:13 -08:00
Collin Chin
52c29b23e0
clippy: remove useless .into_iter() (#2225) 2023-01-03 11:44:52 -08:00
collin
d7b1b9ca56 chore(leo): bump version for new release 2022-12-12 19:31:56 -05:00
d0cd
48a1f0590b
Rename console.assert* to assert*. (#2205)
* Add assert statements to AST

* Add support in passes

* Add parser support

* Add tyc support

* Add support for assert statements in the remaining passes

* Fix examples, tests, and regen expectations

* Fmt

* Regen expectations
2022-12-06 21:56:48 -08:00
collin
1e01a3a686 chore(leo): bump version for new release 2022-11-30 13:40:52 -08:00
Collin Chin
3f2df5389c
use cargo workspace for dependencies (#2195) 2022-11-30 13:31:33 -08:00
Collin Chin
23f5828804
bump aleo v0.3.1 snarkvm v0.9.8 (#2193) 2022-11-30 00:49:50 -08:00
dependabot[bot]
6413f3ecac
Bump serde from 1.0.147 to 1.0.148 (#2189)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.147 to 1.0.148.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.147...v1.0.148)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-29 16:37:19 -08:00
d0cd
23615c6858
Fixes code generation for ExpressionStatements (#2192)
* Fix codegen for call instruction

* Cleanup
2022-11-29 16:36:37 -08:00
d0cd
8986be33e8
Create common module; move pass data structures (#2173)
Co-authored-by: collin <16715212+collinc97@users.noreply.github.com>
2022-11-23 15:05:05 -05:00
collin
f6f286ac8a pull testnet3, regen tests 2022-11-23 02:37:57 -05:00
collin
9e28591589 pull testnet3, regen tests 2022-11-23 01:56:37 -05:00
collin
ac4c38d921 clippy 2022-11-23 01:28:33 -05:00
collin
801df56f9c pull testnet3, regen tests 2022-11-22 20:55:12 -05:00
Collin Chin
40e56f8613
Merge pull request #2100 from AleoHQ/feat/tuple
Supports tuples.
2022-11-22 20:49:25 -05:00
d0cd
a8a8086f18 Fmt 2022-11-16 10:24:29 -08:00
d0cd
9370c11a2b Implement fix 2022-11-16 10:24:29 -08:00
d0cd
ae329c521b Deprecate (async) finalize statements 2022-11-15 13:18:39 -08:00
collin
44bca58821 chore(leo): bump version for new release 2022-11-14 18:56:09 -08:00
collin
49786b3d79 bump snarkvm-v0.9.7 aleo-v0.3.0 2022-11-14 18:53:32 -08:00
d0cd
80d53ee908 Fmt 2022-11-12 16:36:26 -08:00
d0cd
d82fa641a2 Fix parser 2022-11-12 16:35:37 -08:00
d0cd
682b67e184 Fix flattening logic 2022-11-12 16:23:16 -08:00
d0cd
c6fd32c032 Fix flattening pass 2022-11-12 11:28:03 -08:00
d0cd
1f977e5c45 Fix tyc pass 2022-11-12 10:48:16 -08:00
d0cd
1a9c95ce05 Fix SSA pass 2022-11-12 10:21:36 -08:00
d0cd
3227f9bdb4 Fix codegen pass 2022-11-12 10:21:36 -08:00
d0cd
81d7c5c9a4 Update parser; remove async token 2022-11-12 10:17:41 -08:00
d0cd
060f57d971 Remove standalone finalize statement from the AST 2022-11-12 10:13:23 -08:00
d0cd
1e2a7f222d Fmt 2022-11-12 09:58:52 -08:00
d0cd
b16926449c Support private mode in parser and passes 2022-11-12 09:53:20 -08:00
d0cd
111a19761a Fmt 2022-11-11 21:09:57 -08:00
d0cd
31972e1b38 Fix SSA for expr statements 2022-11-11 21:03:11 -08:00
d0cd
2f9bfd7ab9 Cleanup debug prints; fix bug, the flatten test builds 2022-11-08 17:10:39 -08:00
d0cd
ef4ae89b92 Add more test cases 2022-11-08 15:52:31 -08:00
d0cd
ca89010e59 Fix failing case 2022-11-08 15:49:47 -08:00
d0cd
f606a8b74a Restrict tuples in parser; cleanup 2022-11-08 15:49:47 -08:00
d0cd
5bf16064ab WIP Impl codegen for tuples 2022-11-08 15:49:47 -08:00
d0cd
2287e86b56 WIP flattening 2022-11-08 15:49:47 -08:00
d0cd
910d373afd WIP support tuples on lhs of definitions 2022-11-08 15:49:47 -08:00
d0cd
40ff47882f Add support for expression statements in compiler passes 2022-11-08 15:49:47 -08:00
d0cd
a7795b72db Add parser support for expression statements 2022-11-08 15:49:47 -08:00
d0cd
30391c8bd4 Add ExpressionStatement to AST 2022-11-08 15:49:47 -08:00
d0cd
af08c4f2e5 Some cleanup 2022-11-08 15:49:47 -08:00
d0cd
678f8b02a1 Fix unit expression 2022-11-08 15:49:47 -08:00
d0cd
34fa2cb2c6 Parse empty return statement as a unit expression 2022-11-08 15:49:47 -08:00
d0cd
6789bc8aae Add unit expressions to the AST 2022-11-08 15:49:47 -08:00
d0cd
3ab83f45f3 Fix bug, regen tests 2022-11-08 15:49:47 -08:00
d0cd
0439981d01 Add TODO 2022-11-08 15:49:47 -08:00
d0cd
134fc1860c Remove debug prints 2022-11-08 15:49:47 -08:00
d0cd
b60cd7e4b0 Remove redundant check 2022-11-08 15:49:47 -08:00
d0cd
c07e07d9d1 Fix tuple flattening 2022-11-08 15:49:47 -08:00
d0cd
c651da0581 wip tuples 2022-11-08 15:49:47 -08:00
d0cd
4963a11ee7 More tyc restricting nested tuples 2022-11-08 15:49:47 -08:00
d0cd
2839de13c6 Forbid tuples in input and output types 2022-11-08 15:49:47 -08:00
d0cd
29369b2a42 Better tyc for tuples in composite data types 2022-11-08 15:49:47 -08:00
d0cd
fdddb8054a Remove flattening circuits and nested tuples 2022-11-08 15:49:47 -08:00
Pranav Gaddamadugu
6ae2d9727b Cleanup 2022-11-08 15:49:47 -08:00
Pranav Gaddamadugu
605f675ff6 More tyc 2022-11-08 15:49:47 -08:00
Pranav Gaddamadugu
6d82f83c37 WIP 2022-11-08 15:49:46 -08:00
Pranav Gaddamadugu
b622d35d8f Implement logic for flattening circuit definitions 2022-11-08 15:49:46 -08:00
Pranav Gaddamadugu
9994a0451f wip: basic tyc for empty and singleton tuples 2022-11-08 15:49:46 -08:00
Pranav Gaddamadugu
8d204a898b Add tests for tuples 2022-11-08 15:49:46 -08:00
collin
12267cd99d merge snarkvm v0.9.3 2022-11-07 19:14:51 -08:00
collin
dee937c040 update snarkvm v0.9.3 2022-11-07 19:01:06 -08:00
d0cd
2341f293f6 Update snarkVM dependencies 2022-11-07 16:22:58 -08:00
d0cd
a05b7e6b70 Codegen uses struct instead of interface 2022-11-05 18:18:48 -07:00
collin
6f311e7602 bump snarkvm to 0.9.1 bump aleo rev 2022-11-04 18:31:59 -07:00
Collin Chin
f68b117907
Merge pull request #2153 from AleoHQ/dependabot/cargo/testnet3/scoped-tls-1.0.1
Bump scoped-tls from 1.0.0 to 1.0.1
2022-11-04 13:00:22 -07:00
collin
e6c3700945 merge testnet3 2022-11-04 12:46:32 -07:00
Collin Chin
d329181999
Merge pull request #2151 from AleoHQ/fix/span-for-function-call-tyc
Better error messages for mistyped function calls.
2022-11-04 12:34:08 -07:00
Collin Chin
1c7fefac53
Merge pull request #2150 from AleoHQ/fix/tyc-for-member-access
Fix type checking for member access.
2022-11-04 12:33:37 -07:00
collin
3226120503 fix clippy lints 2022-11-04 12:28:59 -07:00
dependabot[bot]
33643f5be0
Bump scoped-tls from 1.0.0 to 1.0.1
Bumps [scoped-tls](https://github.com/alexcrichton/scoped-tls) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/alexcrichton/scoped-tls/releases)
- [Commits](https://github.com/alexcrichton/scoped-tls/compare/1.0.0...1.0.1)

---
updated-dependencies:
- dependency-name: scoped-tls
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-01 10:25:07 +00:00
Pranav Gaddamadugu
7e70da2326 Implement check for nested import 2022-10-31 18:05:46 -07:00
Pranav Gaddamadugu
41a8bc5a73 Add span associated with the import statement to ast 2022-10-31 18:05:14 -07:00
d0cd
43919a9644 Disable string type in type checker 2022-10-31 18:01:04 -07:00
d0cd
3c2da076ff
Merge pull request #2144 from AleoHQ/fix/conditional-assert
Fixes flattening for `console` statements.
2022-10-31 17:11:43 -07:00
d0cd
c4279e2a83
Merge pull request #2146 from AleoHQ/fix/tyc-for-loop-bounds
Fix/tyc for loop bounds
2022-10-31 17:11:19 -07:00
d0cd
160a89494f
Merge pull request #2142 from AleoHQ/fix/finalize-output
Fix output type for finalize block.
2022-10-31 17:02:27 -07:00
d0cd
0b7d5c4892 Implement fix 2022-10-31 13:53:40 -07:00
d0cd
b32bfba376 Fmt; clippy 2022-10-31 13:16:32 -07:00
d0cd
76d302dbad Implement fix; fix span produced by parser 2022-10-31 13:14:15 -07:00
d0cd
9907d89886 Implement fix 2022-10-27 20:21:18 -07:00
d0cd
462d3105a0 Update doc 2022-10-25 18:29:27 -07:00
d0cd
9c44c38dc2 Fix logical formula 2022-10-25 16:21:57 -07:00
d0cd
fe28cabb72 Impl flattening for console statements 2022-10-25 15:54:45 -07:00
d0cd
52ff7b82c5 Refactor guard construction 2022-10-25 15:21:43 -07:00
d0cd
fe0266c1da Prepend program name to AST outfile 2022-10-25 10:40:23 -07:00
d0cd
8ae7c0da99 Fmt 2022-10-24 22:59:18 -07:00
d0cd
e07887e9c7 Cleanup 2022-10-24 22:44:43 -07:00
d0cd
df01360010 Clippy 2022-10-24 22:41:10 -07:00
d0cd
28eb05f56d Implement fix 2022-10-24 22:18:05 -07:00
dependabot[bot]
3af57cbfc5
Bump serde from 1.0.146 to 1.0.147
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.146 to 1.0.147.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.146...v1.0.147)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-24 10:17:51 +00:00
d0cd
44722d1fbf
Merge pull request #2136 from AleoHQ/dependabot/cargo/testnet3/serde-1.0.146
Bump serde from 1.0.145 to 1.0.146
2022-10-21 12:40:28 -07:00
Haruka
aab179c676 Preserve struct member order when reordering owner and gates 2022-10-22 02:46:22 +09:00
dependabot[bot]
22722ddde0
Bump serde from 1.0.145 to 1.0.146
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.145 to 1.0.146.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.145...v1.0.146)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-21 10:56:37 +00:00
d0cd
1f9f1750fe Clippy; add compiler check 2022-10-12 00:22:55 -05:00
d0cd
264e60c6ee Update doc 2022-10-12 00:15:06 -05:00
Pranav Gaddamadugu
047575f9bf Fix failing case 2022-10-12 00:15:06 -05:00
Pranav Gaddamadugu
8e3cd83bb8 Fix failing case 2022-10-12 00:15:06 -05:00
Collin Chin
8b9ad3811d
Merge pull request #2114 from AleoHQ/update/aleo-snarkvm
Update revs.
2022-10-06 14:21:02 -07:00
Collin Chin
4256167bfe
Merge pull request #2112 from AleoHQ/feat/program-scope
Introduces `program` scope.
2022-10-06 14:19:35 -07:00
Pranav Gaddamadugu
97b299ac8a Update revs 2022-10-06 11:31:58 -07:00
Pranav Gaddamadugu
d7813923d2 More examples 2022-10-06 00:17:51 -07:00
Pranav Gaddamadugu
028a01efde More fixes 2022-10-05 23:51:56 -07:00
Pranav Gaddamadugu
8283c922f6 Some bug fixes; update some examples 2022-10-05 15:27:54 -07:00
Pranav Gaddamadugu
e15e8f05d6 Additional validation for program scope and imported files 2022-10-05 14:59:06 -07:00
Pranav Gaddamadugu
8f2a6fdb27 Support AST changes in compile passes 2022-10-05 10:38:35 -07:00
Pranav Gaddamadugu
224cf18544 Add program_scope into AST 2022-10-05 10:00:15 -07:00
Pranav Gaddamadugu
9da6d7735f Enable parser support for program scope 2022-10-05 09:57:16 -07:00
Pranav Gaddamadugu
bd4b7be8cf WIP ast changes for program scope 2022-10-05 09:56:36 -07:00
Pranav Gaddamadugu
8872c3d53f Remove use of default network domain 2022-10-04 19:11:36 -07:00
Pranav Gaddamadugu
c0c5e58011 Add checks for function calls 2022-10-03 16:18:58 -07:00
Pranav Gaddamadugu
e7e01b23a9 Clean up code gen 2022-10-03 10:45:26 -07:00
Pranav Gaddamadugu
fef22d6d5a Clean up tyc pass 2022-10-03 10:40:59 -07:00
Pranav Gaddamadugu
80d8880292 Parser support for transition keyword 2022-10-03 08:53:44 -07:00
Pranav Gaddamadugu
62b16cfa51 Tokenize transition keyword 2022-10-03 08:16:55 -07:00
dependabot[bot]
28ed3dc320
Bump smallvec from 1.9.0 to 1.10.0
Bumps [smallvec](https://github.com/servo/rust-smallvec) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/servo/rust-smallvec/releases)
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: smallvec
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 10:15:01 +00:00
Pranav Gaddamadugu
eb8366badc Some cleanup 2022-09-30 12:19:40 -07:00
Pranav Gaddamadugu
c551179b42 Fmt 2022-09-30 11:55:42 -07:00
Pranav Gaddamadugu
f51a36aeaf Rename in compiler 2022-09-30 11:52:06 -07:00
Pranav Gaddamadugu
508c54dd92 Rename errors 2022-09-30 10:16:05 -07:00
dependabot[bot]
4b6b1f804b
Bump serde from 1.0.144 to 1.0.145
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 10:13:44 +00:00
Collin Chin
e8b086bc81
Merge pull request #2086 from AleoHQ/dependabot/cargo/testnet3/itertools-0.10.5
Bump itertools from 0.10.4 to 0.10.5
2022-09-21 15:20:19 -07:00
Pranav Gaddamadugu
0a481e543e Parse async, require it to precede finalize 2022-09-21 13:18:36 -07:00
Pranav Gaddamadugu
0782c03bf9 Lex async token 2022-09-21 12:20:05 -07:00
Pranav Gaddamadugu
2abfe06c9d Add async token 2022-09-21 12:19:44 -07:00
Pranav Gaddamadugu
72c012f4c2 Add async symbol 2022-09-21 12:19:06 -07:00
dependabot[bot]
35c7f37ded
Bump itertools from 0.10.4 to 0.10.5
Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.10.4 to 0.10.5.
- [Release notes](https://github.com/rust-itertools/itertools/releases)
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/commits)

---
updated-dependencies:
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-21 10:19:41 +00:00
collin
bdaf486604 fix bug and regen tests 2022-09-20 22:05:49 -07:00
collin
2cd1ec82ba remove unused code 2022-09-20 21:59:53 -07:00
Pranav Gaddamadugu
f7b5e213e6 Battleship example compiles 2022-09-20 21:45:16 -07:00
Pranav Gaddamadugu
8f5e779a6a Compiler builds 2022-09-20 20:29:59 -07:00
collin
48530523d9 wip need to finish external inputs 2022-09-20 18:26:22 -07:00
collin
368d4c530c push code to parse returning external records + battleship example 2022-09-20 17:17:43 -07:00
collin
0a86a05d20 push code to parse external calls 2022-09-20 13:58:52 -07:00
Collin Chin
bbd41f81b6
Merge pull request #2073 from AleoHQ/fix/core-function-composite-data-types
Enable core function calls on composite data types.
2022-09-20 00:14:22 +02:00
Collin Chin
2cb3f570c9
Merge pull request #2072 from AleoHQ/fix/tic-tac-toe
Fix tictactoe example.
2022-09-20 00:14:11 +02:00
Pranav Gaddamadugu
792867406b Allow records and circuits for core functions 2022-09-18 02:32:35 +02:00
Pranav Gaddamadugu
8aa968ab1d Note 2022-09-17 19:22:24 +02:00
Pranav Gaddamadugu
611e65554d Cleanup 2022-09-17 19:17:01 +02:00
Pranav Gaddamadugu
7a29c76805 Regen expectations 2022-09-17 19:02:25 +02:00
Pranav Gaddamadugu
c202878013 Fix for nested flattening 2022-09-17 18:58:40 +02:00
collin
ab43581d84 use crates.io snarkvm dep 2022-09-16 18:31:56 +02:00
collin
4e05840bf5 bump ci rust version to 1.63 2022-09-16 18:19:20 +02:00
collin
834ea300aa bump ci rust version to 1.65 2022-09-16 18:17:10 +02:00
collin
6c18565700 too new of rust version for actions 2022-09-16 17:51:15 +02:00
collin
62659507c5 clippy 2022-09-16 17:48:26 +02:00
collin
2e24f82f21 Update rust versions 2022-09-16 17:32:20 +02:00
collin
ed712ccf32 Update deps 2022-09-16 17:28:24 +02:00
collin
c1d21e699c merge testnet3 2022-09-13 15:39:20 +02:00
d0cd
048be34524
Merge pull request #2059 from AleoHQ/dependabot/cargo/testnet3/criterion-0.4.0
Bump criterion from 0.3.6 to 0.4.0
2022-09-13 11:47:55 +02:00
Pranav Gaddamadugu
a6fe8bf80c Update docs 2022-09-13 11:10:22 +02:00
Pranav Gaddamadugu
c2bed2bb54 Add name to finalize block 2022-09-13 11:06:24 +02:00
dependabot[bot]
1b086ac519
Bump criterion from 0.3.6 to 0.4.0
Bumps [criterion](https://github.com/bheisler/criterion.rs) from 0.3.6 to 0.4.0.
- [Release notes](https://github.com/bheisler/criterion.rs/releases)
- [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bheisler/criterion.rs/compare/0.3.6...0.4.0)

---
updated-dependencies:
- dependency-name: criterion
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-12 10:19:58 +00:00
Pranav Gaddamadugu
6d35560528 More tests 2022-09-07 23:09:11 -07:00
Pranav Gaddamadugu
48ce885860 Add more tyc checks 2022-09-07 10:39:00 -07:00
Pranav Gaddamadugu
9032df19cb Parser tests for mapping 2022-09-06 12:36:27 -07:00
Pranav Gaddamadugu
bb705da769 Improve documentation for SSA and flattening 2022-09-06 12:14:37 -07:00
Pranav Gaddamadugu
267fc99978 Add new tests; regen expectations 2022-09-06 12:14:37 -07:00
Pranav Gaddamadugu
3d5ddb9e1a Clippy 2022-09-06 12:14:37 -07:00
Pranav Gaddamadugu
618117be89 Fix visibilities in codegen 2022-09-06 12:14:37 -07:00
Pranav Gaddamadugu
0fa8082656 Update token example 2022-09-06 12:14:36 -07:00
Pranav Gaddamadugu
0e1768ac59 Hook flattening pass into compiler; regen expectations 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
9d5aa9d08d Implement flattening phase 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
f74bfb034c wip flattening phase 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
18274bf4f9 More tyc 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
f4f77cdf55 Enable modes for return types in parser and AST 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
5d6c402c04 Fix buggy case 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
4266ba28c1 more wip 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
9f56b34677 wip 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
3efb4c5108 More tyc and ssa for finalize 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
791463c82f WIP tyc for finalize 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
77effd4613 Implement parsing for finalize, increment, and decrement 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
044e41d80e Add new statements to passes 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
bd232127dc Clean up statments; add increment, decrement, and finalize 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
5521e7f30b Add finalize block to AST 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
75307d1d4e More tests 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
195fc4da31 Implement codegen for mappings 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
8a8e198f59 Tyc for mappings 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
1b6dea395f Add parser tests; regen expectations 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
09e9aeb537 Add support for mappings in the parsers 2022-09-06 12:13:32 -07:00
Pranav Gaddamadugu
dffb788913 Add Mapping to Program and passes 2022-09-06 12:13:32 -07:00