Pranav Gaddamadugu
4cc1a17920
Implement fix
2023-10-25 14:09:24 -04:00
Collin Chin
eb12c7e475
chore(leo): bump version for new release
2023-10-19 21:02:05 -07:00
Pranav Gaddamadugu
e4fbf30088
clippy
2023-10-19 22:42:01 -04:00
Pranav Gaddamadugu
e34caf1458
Implement fix
2023-10-19 22:42:01 -04:00
evan-schott
e55035c568
increase test coverage
2023-10-04 16:46:11 -07:00
evan-schott
6da2753b83
small edits to make tests pass
2023-10-04 13:27:25 -07:00
Pranav Gaddamadugu
70e0c26ad1
Fix
2023-10-04 13:05:35 -07:00
d0cd
184c306688
Update compiler/passes/src/function_inlining/inline_program.rs
...
Signed-off-by: d0cd <pranavsaig@gmail.com>
2023-10-04 13:05:35 -07:00
d0cd
f6a8f46dee
Update compiler/passes/src/function_inlining/inline_program.rs
...
Signed-off-by: d0cd <pranavsaig@gmail.com>
2023-10-04 13:05:35 -07:00
d0cd
70e055773d
Update compiler/passes/src/function_inlining/inline_program.rs
...
Signed-off-by: d0cd <pranavsaig@gmail.com>
2023-10-04 13:05:35 -07:00
evan-schott
f3f98ac30e
formatting
2023-10-04 13:05:35 -07:00
evan-schott
c37eeaae03
constant time lookups
2023-10-04 13:05:35 -07:00
evan-schott
141bca35c4
Update compiler/passes/src/function_inlining/inline_program.rs
...
Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: evan-schott <53463459+evan-schott@users.noreply.github.com>
2023-10-04 13:05:34 -07:00
evan-schott
3d0be6b04d
Update compiler/passes/src/function_inlining/function_inliner.rs
...
Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: evan-schott <53463459+evan-schott@users.noreply.github.com>
2023-10-04 13:05:34 -07:00
evan-schott
0348e613c6
change AST
2023-10-04 13:05:32 -07:00
evan-schott
52bb785ff4
fixes
2023-10-04 13:00:58 -07:00
evan-schott
0a2ea03701
rebase
2023-10-04 13:00:52 -07:00
evan-schott
a70a3ffb7a
create error for tuple length mismatch
2023-10-04 12:57:09 -07:00
evan-schott
dcf03dd393
simplify
2023-10-04 12:54:36 -07:00
evan-schott
24c88795fe
fixes
2023-10-04 12:54:36 -07:00
evan-schott
c5464db066
formatting & test expectation
2023-10-04 12:54:36 -07:00
evan-schott
ae86532e96
Construct CPT during pass without messing up loop unrolling
2023-10-04 12:54:36 -07:00
evan-schott
22c592b9bf
moved bounds checking form TC to LU
2023-10-04 12:54:36 -07:00
evan-schott
a7ee073f07
add constants to CPT and remove constant definitions from ST and AST
2023-10-04 12:54:36 -07:00
evan-schott
c249786f7c
tweak loop unrolling so that build constant propagation table simultaneously
2023-10-04 12:54:36 -07:00
evan-schott
be1866f582
propagate constants by substituting constants for there values
2023-10-04 12:54:36 -07:00
evan-schott
9aa2553b29
move bounds checking to loop unrolling pass
2023-10-04 12:54:36 -07:00
evan-schott
ef04d31099
beautify
2023-10-04 12:54:36 -07:00
evan-schott
54b880d66e
in response to AST passes change
2023-10-04 12:54:36 -07:00
evan-schott
3540699474
Add function to remove variables from ST (so can clear const vars)
2023-10-04 12:54:36 -07:00
evan-schott
18186314f8
constant propagation table to store values of constants (both local and global)
2023-10-04 12:54:36 -07:00
Pranav Gaddamadugu
95b540c253
Fix
2023-09-28 23:37:16 -04:00
Pranav Gaddamadugu
9d3fcc70f1
Connect compiler
2023-09-28 23:34:19 -04:00
Pranav Gaddamadugu
05481218bf
Update codegen to be compatible with async
2023-09-28 23:34:18 -04:00
Pranav Gaddamadugu
a53c34388a
Update codegen for mappings
2023-09-28 23:34:18 -04:00
Pranav Gaddamadugu
44658ca917
Rename parent to signer
2023-09-28 23:34:18 -04:00
Pranav Gaddamadugu
4abec6b5fc
Add support for self.parent
2023-09-28 23:34:18 -04:00
Collin Chin
9c20f42d1d
Feat/sha3 ( #2604 )
...
* implement Keccak256 Keccak384 Keccak512 with tests
* implement SHA3_256 SHA3_384 SHA3_512 with tests
2023-09-22 09:54:14 -07:00
Collin Chin
82b39a81e9
implement Keccak256 Keccak384 Keccak512 with tests ( #2603 )
2023-09-22 08:31:30 -07:00
evan-schott
c0aa78223c
formatting:
2023-09-11 14:40:28 -07:00
evan-schott
c960d7195f
add newline
2023-09-11 14:37:36 -07:00
collin
0f2f16877b
chore(leo): bump version for new release
2023-09-08 10:18:21 -07:00
evan-schott
aceb20b8d5
Merge remote-tracking branch 'origin/testnet3' into feat/hash-symbol-table
2023-09-07 11:09:02 -07:00
evan-schott
e149f7d35f
clippy changes
2023-09-06 16:02:54 -07:00
evan-schott
444a4214eb
run all tests, add optionality for writing symbol tables to json
2023-09-06 16:02:21 -07:00
evan-schott
cc2d54ae2b
changes to testing framework
2023-09-05 15:06:28 -07:00
evan-schott
a3e25ebc69
successfully add hashes to expectation file
2023-09-05 15:05:43 -07:00
Pranav Gaddamadugu
023d94d20f
Code gen support
2023-08-30 14:05:46 -04:00
Pranav Gaddamadugu
daf003f728
Tyc support
2023-08-30 14:05:46 -04:00
Pranav Gaddamadugu
46e9313e55
Introduce Type::Signature to the AST
2023-08-30 14:05:46 -04:00
d0cd
e180118a30
Merge pull request #2545 from AleoHQ/feat/underscore
...
Add support for underscores in numeric literals #2538
2023-08-28 08:17:22 -04:00
evan-schott
47e881f55e
removed inaccurate invalid-literal error
2023-08-25 14:11:22 -07:00
evan-schott
035f763d40
clippy changes
2023-08-25 10:07:42 -07:00
evan-schott
550f43b039
Revisions (underscore to execute test, type checker error msg, spurious type error fix, revised tuple indexing test)
2023-08-25 09:49:53 -07:00
evan-schott
90bb897130
more clippy
2023-08-24 15:58:54 -07:00
evan-schott
f4fee23758
clippy fix
2023-08-24 15:40:00 -07:00
evan-schott
4308d598e2
running all tests and updating expectation files
2023-08-24 15:29:23 -07:00
evan-schott
439d2b29de
loop unrolling compatible with underscores
2023-08-24 15:07:00 -07:00
collin
439312275a
fix more warnings
2023-08-18 16:47:08 -07:00
collin
cf9fbb319d
fix noop method call warnings
2023-08-18 16:16:55 -07:00
Pranav Gaddamadugu
7d4a5d3b33
Clippy
2023-08-17 17:52:51 -04:00
Pranav Gaddamadugu
440cced9d8
Cleanup
2023-08-17 17:49:29 -04:00
Pranav Gaddamadugu
661a7cd508
Update compiler pipelines
2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
2fe6892645
Use NodeBuilder in FunctionInliner
2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
19ba799d21
Use NodeBuilder in LoopUnroller
2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
8f63fcdf80
Add NodeBuilder to StaticSingleAssigner
2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
05d38f3777
Use NodeBuilder in Flattener
2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
bf25bbae8b
Use interior mutability pattern for Assigner
2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
637e091abb
Use NodeBuilder in DCE
2023-08-17 17:22:56 -04:00
d0cd
7cd6e757bf
Merge pull request #2522 from AleoHQ/design/node-id
...
[Design] Add `id` to AST nodes.
2023-08-17 00:26:52 -04:00
collin
11b87229f1
chore(leo): bump version for new release
2023-08-15 14:02:00 -07:00
d0cd
85d9a28ebb
[Test] Add examples
to test framework. ( #2527 )
...
* Add tests
* Remove debug print
* Regen expectations
* Remove battleship example
2023-08-15 11:11:17 -07:00
Pranav Gaddamadugu
7cc3330d98
Add failing test
2023-08-09 20:12:02 -04:00
Pranav Gaddamadugu
6808d90545
Only use NodeID::default()
2023-08-09 17:22:33 -04:00
Pranav Gaddamadugu
3b1bd38ec6
Update passes
2023-08-09 16:58:28 -04:00
Pranav Gaddamadugu
90add44907
WIP update passes
2023-08-09 15:34:39 -04:00
collin
7714f55999
chore(leo): bump version for new release
2023-08-08 10:14:56 -07:00
collin
d336be0b7b
chore(leo): bump version for new release
2023-07-24 10:51:44 -07:00
dependabot[bot]
b70ebe5f86
Bump num-traits from 0.2.15 to 0.2.16 ( #2499 )
...
Bumps [num-traits](https://github.com/rust-num/num-traits ) from 0.2.15 to 0.2.16.
- [Changelog](https://github.com/rust-num/num-traits/blob/master/RELEASES.md )
- [Commits](https://github.com/rust-num/num-traits/compare/num-traits-0.2.15...num-traits-0.2.16 )
---
updated-dependencies:
- dependency-name: num-traits
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-21 17:07:00 -07:00
collin
6a7748e5fe
chore(leo): bump version for new release
2023-07-19 18:17:31 -07:00
Collin Chin
d44457fc32
[Feature] Implement leo execute ( #2491 )
...
* bump snarkvm rev
* update default gitignore
* impl leo execute
* bump snarkvm 0.14.5
* modify examples wip
* update run.sh examples
* impl env file
* clippy warning
* fix auction example
* fix auction example env
* generate new private key for new env - tests failing due to env not found err
* commit error changes
* Fix tests; clippy
* Get examples working
* leo build checks that build dir is well formed; clippy
* Clean up
* Update examples/README.md
Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
* do not commit .avm files
* use snarkvm commands
---------
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Pranav Gaddamadugu <pranav@aleo.org>
Co-authored-by: d0cd <pranavsaig@gmail.com>
2023-07-19 18:04:09 -07:00
collin
a18899f253
chore(leo): bump version for new release
2023-07-05 21:25:34 -07:00
d0cd
d92d48e4a5
[Fix] Fix issues related to flattening. ( #2439 )
...
* Implement fix
* Regen expectations
* Update AST printing for functions
* Fix code generation when there are no output operands
* Fix flattener
* Add additional tests
* Regen expectations
* Fmt
* Regen expectations
2023-07-05 15:45:15 -07:00
Collin Chin
b690a62676
impl Mapping::contains, Mapping::remove ( #2436 )
...
* impl Mapping::contains, Mapping::remove
* regen expectations
* Update compiler/passes/src/type_checking/checker.rs
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
---------
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
2023-06-29 17:04:55 -07:00
collin
9fccf015d7
chore(leo): bump version for new release
2023-06-28 21:09:44 -07:00
d0cd
b236918df4
[Feature] Support ChaCha::rand_*
( #2433 )
...
* Add tests for ChaCha::rand*
* Add Chacha::rand* to AST, tyc, and codegen
* Add lottery example
* Regen expectations
* Add check asserting that command is only used in finalize block
* Update example and related CI
2023-06-28 21:02:50 -07:00
d0cd
c373b898c4
Merge pull request #2427 from AleoHQ/feat/group-to-coordinate
...
[Feature] Support `to_x_coordinate` for `group`s.
2023-06-28 11:32:57 -04:00
Pranav Gaddamadugu
1fbb228092
Add comment
2023-06-28 10:09:33 -04:00
Pranav Gaddamadugu
8062693f3d
Support method calls for group coordinates
2023-06-23 21:03:11 -04:00
Pranav Gaddamadugu
8b4552efd5
Fix implementation
2023-06-23 20:35:42 -04:00
Pranav Gaddamadugu
9b7a4ba456
WIP associated function syntax for group::to_*_coordinate
2023-06-23 20:22:03 -04:00
collin
80b0976276
chore(leo): bump version for new release
2023-06-23 17:19:25 -07:00
d0cd
07d26ea43f
[Feature] Casting via the as
operator. ( #2426 )
...
* Revert "Revert WIP"
This reverts commit 5cce8b4a0e
.
* Update tyc
* Add parse, compile, and execute tests
* Regen expectations
2023-06-23 17:09:15 -07:00
dependabot[bot]
1025bd965d
Bump itertools from 0.10.5 to 0.11.0 ( #2424 )
...
Bumps [itertools](https://github.com/rust-itertools/itertools ) from 0.10.5 to 0.11.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.10.5...v0.11.0 )
---
updated-dependencies:
- dependency-name: itertools
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-23 17:07:51 -07:00
Pranav Gaddamadugu
5cce8b4a0e
Revert WIP
2023-06-23 10:24:10 -04:00
Pranav Gaddamadugu
ccb4c0f38f
Implement type checking for cast expressions
2023-06-23 10:10:10 -04:00
Pranav Gaddamadugu
c80f9c317c
Handle cast expressions in SSA and CodeGen passes
2023-06-23 09:36:40 -04:00
Collin Chin
4a0ee1d9d8
[Feature] implement block.height command ( #2420 )
...
* implement initial block.height
* commit.height parsing and code generation
* patch self.caller tests
* add error for self.caller in a finalize context
* fix test
2023-06-20 16:36:11 -07:00
collin
7741f5b0c4
chore(leo): bump version for new release
2023-06-15 22:38:02 -07:00
collin
f5867a4fe4
chore(leo): bump version for new release
2023-06-15 22:26:19 -07:00
Collin Chin
e5ae160d1a
Implement new hash and commit functions ( #2415 )
...
* refactor hash -> hash_to_field
* refactor commit -> commit_to_field
* implement commit_to_address
* implement hash_to_address
* update hash and commit examples
* implement hash_to_scalar
* update tests
* implement bhp hash to integer variants
* implement bhp pedersen and poseidon integer variants
* Update compiler/passes/src/type_checking/checker.rs
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
* Update compiler/passes/src/type_checking/checker.rs
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
* fix pedersen hash type checks
---------
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
2023-06-15 19:55:03 -07:00
Collin Chin
d83c4be330
Implement Mapping::get_or_use ( #2413 )
...
* get_or_init -> get_or_use
* use mapping get_or_use in examples
* fix codegen for Mapping::get_or_use
* fix tests for Mapping::get_or_use
* fix warnings, update snarvm rev
* bump circle rust img v1.70
* fix codegen
* update snarkvm rev and regen tests
* Update compiler/parser/src/parser/expression.rs
Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
* Delete program.json
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
* Delete program.json
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
---------
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: d0cd <pranavsaig@gmail.com>
2023-06-13 12:09:33 -07:00
Collin Chin
4e71f60cb4
Implement additional features to the "group" element type ( #2394 )
...
* add new hash and commit symbols
* pedersen commitment methods return fields
* use snarkvm rev a451d91, impl commit_to_group.bhp256
* implement bhp commit to group variants
* implement bhp hash_to_group variants
* implement pedersen commit_to_group and hash_to_scalar variants
* implement poseidon hash_to_group and hash_to_scalar variants
* remove hash_many symbol
* fix tests
* regen test expectations
2023-06-07 13:09:08 -07:00
collin
52dfc097c5
chore(leo): bump version for new release
2023-05-31 20:37:17 -07:00
Collin Chin
42d97d3d89
implement group::GEN Leo syntax ( #2401 )
...
* implement group::GEN Leo syntax
* revert unrelated test changes
* move new errors to bottom of file to keep previous error codes consistent
2023-05-31 16:05:56 -07:00
Collin Chin
2e1a9fc979
chore(leo): bump version for new release
2023-05-23 15:02:30 -07:00
collin
1c5de6fb80
bump snarkvm v0.11.2
2023-05-12 14:42:15 -07:00
d0cd
d0c29ce8e0
[Update] snarkvm 0.11.0 ( #2377 )
...
* Remove gates from tests
* Remove Finalize test namespace
* Remove gates from examples
* Remove gates from compiler
* Regen expectations
* Add test that gates is allowed as a standard field of a record
* Update Rust version in CI
* Add check for MAX_MAPPINGS
2023-05-10 21:32:37 -07:00
collin
85821b524e
chore(leo): bump version for new release
2023-04-19 18:02:15 -07:00
Pranav Gaddamadugu
4b64fbe03a
Fix error message
2023-04-18 17:22:59 -07:00
Pranav Gaddamadugu
98574495ff
Update check
2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
6a660c4ceb
Remove gates check
2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
581a671e31
Update maximum number of transitions
2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
a613f35c07
Check that finalize block does not return a value
2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
0b99135962
Update Mapping::get_or to Mapping::get_or_init
2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
76693533b0
Update code gen for Mapping::set
2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
be3c58cf53
Update codegen
2023-04-18 16:59:32 -07:00
Pranav Gaddamadugu
a0b00ac78c
Update examples; fmt
2023-04-18 16:59:07 -07:00
Pranav Gaddamadugu
bb5c793bb3
Fix code gen
2023-04-18 16:53:27 -07:00
Pranav Gaddamadugu
8426f824ff
Fix passes
2023-04-18 16:53:27 -07:00
Pranav Gaddamadugu
da7537344b
Rename Mapping::put to Mapping::set
2023-04-18 16:37:45 -07:00
Pranav Gaddamadugu
aeab0c59ec
Disallow records in finalize contexts
2023-04-18 16:37:45 -07:00
Pranav Gaddamadugu
ebe7f7ab00
DCE marks mapping core operations as necessary
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
4f27c92f15
Remove Increment, Decrement statements from AST
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
30c9800e01
Check that mapping operations are invoked within a finalize block
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
15187edfcf
Add codegen for core mapping ops
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
defb657e5a
Implement tyc for mapping operations
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
34fb0d1815
Add tyc for core functions
2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
cbd0663fa7
Add comment
2023-04-12 17:41:54 -07:00
Collin Chin
68eabc38ae
simplify logic
2023-04-12 15:52:10 -07:00
Pranav Gaddamadugu
59f418f5d0
Fix issue in codegen
2023-04-12 12:38:44 -07:00
Pranav Gaddamadugu
d26a5f693d
DCE eliminates expr statements that are not function calls
2023-04-12 12:38:43 -07:00
Pranav Gaddamadugu
0f8838c870
Fix bug
2023-04-11 10:11:08 -07:00
Pranav Gaddamadugu
fd22fb9ec4
Fix bug
2023-04-05 09:13:37 -07:00
d0cd
c74772cfac
Merge pull request #2328 from AleoHQ/fix/issue-2324
...
[Fix] Fixes unwrapping panic when unwrapping `lookup_struct` in `ProgramVisitor::visit_function`
2023-03-31 16:06:51 -07:00
d0cd
5cc6a06e2d
Merge pull request #2329 from AleoHQ/fix/issue-2325
...
[Fix] Panic: called Option::unwrap() on a Err value (Literal::Integer to Value)
2023-03-31 16:05:33 -07:00
Pranav Gaddamadugu
61cf227f58
Fmt
2023-03-31 10:02:33 -07:00
Pranav Gaddamadugu
2646b7b28b
Fix bug
2023-03-31 09:58:25 -07:00
Pranav Gaddamadugu
ee3e225f92
Fix bug
2023-03-27 10:09:12 -07:00
Pranav Gaddamadugu
8adc6c76b8
Fmts and clippies
2023-03-26 23:18:03 -07:00
d0cd
6c61296f78
Add targeted DCE test; cleanup
2023-02-21 17:13:54 -08:00
d0cd
0e6aa4729b
Clippy
2023-02-21 17:13:53 -08:00
d0cd
d634662e97
Fmt
2023-02-21 17:13:53 -08:00
d0cd
da64d487ec
Fix DCE impl
2023-02-21 17:09:22 -08:00
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