d0cd
dfc03db67e
Connect dead code elimination pass to compiler stages, CLI, and tests
2023-02-21 17:09:22 -08:00
d0cd
ec91d5655b
Prototype dead code elimination
2023-02-21 17:09:22 -08:00
d0cd
4b3b4a83ff
Initial scaffolding for dead code elimination
2023-02-21 17:09:22 -08:00
d0cd
c8f6089be3
[Fix] Excludes inline
functions from produced bytecode. ( #2277 )
...
* Remove codegen for inline functions
* Regen expectations
2023-02-21 14:17:11 -08:00
Collin Chin
0a738d4994
chore(leo): bump version for new release
2023-02-17 22:30:17 -05:00
d0cd
f6d043c1f0
Fixes issues with function inlining from imported programs. ( #2271 )
...
* TYC for calls to external inline functions
* Fix issue in function inlining
* Fix issue in codegen
* Remove redundant reordering of functions
* Clippy
* Update compiler/passes/src/function_inlining/inline_program.rs
Signed-off-by: Collin Chin <collin@aleo.org>
---------
Signed-off-by: Collin Chin <collin@aleo.org>
Co-authored-by: Collin Chin <collin@aleo.org>
2023-02-16 22:13:54 -08:00
d0cd
067dadb12b
Merge pull request #2263 from AleoHQ/feat/record-visibility
...
[Feature] Visibilities for record members.
2023-02-14 16:38:54 -08:00
d0cd
cf22bc75bb
Address feedback
2023-02-14 16:30:12 -08:00
d0cd
f269a3c609
Add codegen support for records with visibilities
2023-02-10 21:35:37 -08:00
d0cd
a6663db934
Typechecking for structs with members
2023-02-10 21:31:10 -08:00
d0cd
47fa89b012
Refactor mode
2023-02-10 21:21:06 -08:00
d0cd
1dd5887518
Clippy and cleanup
2023-02-10 16:50:59 -08:00
d0cd
0afe0e12f9
Inliner uses AssignmentRenamer instead of SSA; address edge cases
2023-02-10 15:09:59 -08:00
d0cd
475a5b7870
Fix issue in flattening
2023-02-10 15:09:34 -08:00
d0cd
c70c018109
Refactor replacer
2023-02-10 15:08:23 -08:00
d0cd
a2ca077516
Introduce AssignmentRenamer
2023-02-10 15:07:58 -08:00
d0cd
d2381767e9
Remove greedy inlining
2023-02-10 09:47:42 -08:00
d0cd
79bf13ff8e
Integrate function inlining into test framework
2023-02-10 09:30:43 -08:00
d0cd
ccae285408
Minor refactors and cleaning
2023-02-10 09:07:14 -08:00
d0cd
53cbaa5f96
Initial impl of function inling
2023-02-10 09:06:26 -08:00
d0cd
3a1f66c6dd
Introduce Replacer
2023-02-10 09:05:58 -08:00
d0cd
335fb6efcb
Update doc to reflect function inlining occuring after flattening
2023-02-09 20:26:59 -08:00
d0cd
f7267b3daa
Cleanup
2023-02-09 19:36:14 -08:00
d0cd
c934bb35b3
WIP function inlining
2023-02-09 19:36:01 -08:00
d0cd
b3ef6f79c3
Add typechecking for inline functions
2023-02-08 17:09:17 -08:00
d0cd
b5c22e23ee
Remove occurences of 'call_type'
2023-02-08 16:37:47 -08:00
d0cd
44e378b84b
Rename CallType to Variant
2023-02-08 16:32:08 -08:00
d0cd
4bb6ceb5ea
Update license and clippy
2023-02-05 13:43:10 -08:00
d0cd
0a8b41b025
Address feedback
2023-02-05 12:46:21 -08:00
d0cd
f65ad5dc69
Fmt
2023-02-05 12:46:21 -08:00
d0cd
74e358dde6
Add test for out of order functions
2023-02-05 12:46:21 -08:00
d0cd
e633c62b71
Implement post-ordering for functions during code-generation
2023-02-05 12:46:21 -08:00
d0cd
f06b83c7f4
Implement check for cyclic call graph
2023-02-05 12:46:20 -08:00
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
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
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