damirka
c21114c161
adds compiler optimizations flags to build and other commands
...
- optimizations can either be turned all together or specified
- removed deprecated clippy rules, followed clippy
- removed library file logic from build command, we don't have libraries
2021-03-28 19:28:00 +03:00
damirka
5fdf86f415
added compiler options to constructor and factory methods
2021-03-28 17:49:49 +03:00
gluax
dd06df4b1d
it almost fully works, need to fix arrays, circuits and function calls
2021-03-26 15:47:11 -04:00
gluax
406692c2aa
merge master, next is parser
2021-03-26 12:07:48 -04:00
Protryon
63d1b1005f
format
2021-03-26 05:19:42 -07:00
Protryon
5985d8da41
tendrilize spans
2021-03-26 05:18:55 -07:00
collin
6a1afdabb7
Merge branch 'master' of https://github.com/AleoHQ/leo into feature/constant-mutable-declarations
2021-03-25 22:46:11 -07:00
collin
28bca20b97
pray to the clippy gods (allow upper case acronyms in state module)
2021-03-25 16:03:32 -07:00
collin
ef8517b8ce
allow clippy warns
2021-03-25 15:51:46 -07:00
gluax
696825eb6a
asked for refactors started, this will fail tests
2021-03-25 13:48:47 -04:00
gluax
3efc705a8c
fix tests merged from master
2021-03-25 11:19:42 -04:00
gluax
ab32aeb342
merge master
2021-03-24 15:13:53 -04:00
Collin Chin
94e7509690
Merge pull request #784 from AleoHQ/dead-code-elimination
...
Dead code elimination
2021-03-23 16:26:22 -07:00
collin
99efdf00cb
add comments to asg passes
2021-03-23 15:33:13 -07:00
Collin Chin
46220aa889
Merge pull request #761 from AleoHQ/feature/const-inputs
...
[Feature, Compiler] Adds constant inputs
2021-03-23 15:19:44 -07:00
collin
3a6ca5018d
edit main input comments
2021-03-23 14:44:16 -07:00
collin
8172d73a71
fix bit not error
2021-03-23 14:38:20 -07:00
collin
68afcadfa4
update error descriptions
2021-03-23 14:36:22 -07:00
gluax
0ea4f1e0e3
const_ self as function input properly
2021-03-23 11:49:27 -04:00
ljedrz
d14edcb4cd
refactor: use a macro to deduplicate code in Integer::allocate_type
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-03-23 11:24:47 +01:00
collin
ae9ba51b7d
update pedersen hash example to use constant inputs
2021-03-22 15:24:32 -07:00
Max Bruce
d120e90d6e
Merge branch 'master' into dead-code-elimination
2021-03-22 07:04:38 -07:00
damirka
b5ae4e1ca4
extended errors, added more error cases
2021-03-19 15:15:06 +03:00
damirka
0eb7b972c7
Merge branch 'master' into feature/const-inputs
2021-03-17 20:54:52 +03:00
damirka
2862549603
removed unwraps
2021-03-17 13:23:58 +03:00
gluax
e9bc1159ff
merge master and fix last bug
2021-03-16 17:28:59 -04:00
gluax
6ffcb48822
asg now handles Circuit name in Circuit name, some bug fixes
2021-03-16 16:49:18 -04:00
collin
0a28945262
Merge branch 'master' of https://github.com/AleoHQ/leo into dead-code-elimination
2021-03-16 12:19:01 -07:00
collin
078f0b4351
Merge branch 'master' of https://github.com/AleoHQ/leo into fix/const-loop-range
2021-03-16 12:18:15 -07:00
damirka
8c228cc6b7
forced const inputs for const variables
2021-03-16 20:37:27 +03:00
damirka
037851e703
Merge branch 'master' into feature/const-inputs
2021-03-16 16:34:29 +03:00
damirka
40f4b1cb65
covered type mismatch in constant inputs
2021-03-16 16:32:55 +03:00
howardwu
0a324ec817
Fix merge conflict with master
2021-03-15 21:14:04 -07:00
howardwu
284bee6fe8
Update to ToBitsBEGadget, update to snarkVM v0.2.1
2021-03-15 21:02:03 -07:00
damirka
a516f36e4f
remove pub visibility in program_input
2021-03-16 00:50:04 +03:00
damirka
2508ec7ef1
array dimensions check added, const tuples added
2021-03-15 22:58:34 +03:00
gluax
7d2a71c668
Merge master
2021-03-15 13:52:51 -04:00
gluax
ac13542638
Proper Errors
2021-03-15 13:37:23 -04:00
damirka
229141a06e
Merge branch 'master' into feature/const-inputs
2021-03-15 16:45:30 +03:00
damirka
b58db80005
updates after @collinc97 comments
2021-03-15 16:29:45 +03:00
Protryon
ba9444ecc4
dead code elimination pass
2021-03-13 06:58:09 -08:00
Collin Chin
1c15fb5eff
formatting 2
2021-03-12 21:13:17 -08:00
Collin Chin
45316e90d9
formatting
2021-03-12 21:02:38 -08:00
Collin Chin
6ce003fd6c
fix program parsing formatted errors
2021-03-12 20:35:34 -08:00
collin
6962e1c2e1
refactor to use snarkvm int16 int32 int64 int128 gadgets
2021-03-12 15:03:22 -08:00
collin
bec4a15c12
refactor to use snarkvm int8 gadget
2021-03-12 14:23:41 -08:00
Collin Chin
1fbd337fec
Merge pull request #773 from AleoHQ/refactor/gadget-sign-extend
...
Refactor sign extend gadget
2021-03-12 11:48:02 -08:00
damirka
14d167a725
added tests for constants
2021-03-12 13:56:38 +03:00
damirka
15906bd4d2
updates following @collinc97 review
2021-03-12 12:35:17 +03:00
damirka
8542afe838
added const values processing for tuple and array
2021-03-12 10:21:03 +03:00
damirka
9808b2fa7f
Merge branch 'master' into feature/const-inputs
2021-03-12 10:14:29 +03:00
collin
14063f723b
refactor to use snarkvm evaluatelt and comparator gadgets
2021-03-11 16:44:46 -08:00
collin
522e3b6ea6
refactor to use snarkvm sub gadget
2021-03-11 16:27:06 -08:00
collin
b5ae6dee64
remove old pow gadget files
2021-03-11 16:19:20 -08:00
collin
faacfbc97e
refactor to use snarkvm neg gadget
2021-03-11 16:12:33 -08:00
collin
d4b8bbbe50
refactor to use snarkvm mul gadget
2021-03-11 16:02:28 -08:00
collin
11ddb1f761
refactor to use snarkvm div gadget
2021-03-11 15:54:55 -08:00
collin
deb3847b8e
remove add trait and uint impls
2021-03-11 14:47:34 -08:00
damirka
344d7886ea
change grouping in imports
2021-03-11 23:10:05 +03:00
damirka
47e4d23ab1
staging commit with const input syntax and constants processing
2021-03-11 19:05:08 +03:00
Protryon
b28f8db4f5
flatten asg-passes
2021-03-10 09:57:27 -08:00
Protryon
0f977707a9
fmt
2021-03-10 09:35:11 -08:00
Protryon
9156068801
constant folding
2021-03-10 09:35:11 -08:00
Collin Chin
a18b757ff4
Merge branch 'master' into console-assert-error
2021-03-08 16:20:46 -08:00
collin
10ecc6e6e2
merge master and fix build issues
2021-03-04 14:11:17 -08:00
howardwu
2e7b542b8b
Format and clean up, enable default on snarkvm_algorithms
2021-03-04 11:09:24 -08:00
howardwu
1735038dee
Update algorithms, curves, and gadget traits
2021-03-04 11:02:31 -08:00
howardwu
4650b5cd80
Update gadget traits
2021-03-04 11:01:00 -08:00
howardwu
3bdf598431
Update field and curves traits
2021-03-04 10:59:43 -08:00
howardwu
8690e35e95
Update field structs
2021-03-04 10:58:50 -08:00
howardwu
c03e1045f2
Update gadgets traits
2021-03-04 10:57:20 -08:00
howardwu
4692a2b20e
Update object errors
2021-03-04 10:53:48 -08:00
howardwu
1b0a6dbd69
Update fields traits
2021-03-04 10:52:54 -08:00
howardwu
7b7c1bbef4
Remove object dept
2021-03-04 10:51:59 -08:00
howardwu
4e9576e58d
Fix object errors
2021-03-04 10:49:47 -08:00
howardwu
d8e9edc941
Update fields structs
2021-03-04 10:48:28 -08:00
howardwu
24f5b168aa
Updates r1cs traits
2021-03-04 10:45:37 -08:00
howardwu
f3daba63df
Update gadgets traits
2021-03-04 10:41:33 -08:00
howardwu
fc4bc537dd
Update primefield traits
2021-03-04 10:39:56 -08:00
howardwu
b95495bab3
Update r1cs error
2021-03-04 10:39:22 -08:00
howardwu
3c4b8e9f68
Update gadgets traits
2021-03-04 10:38:28 -08:00
howardwu
400e3dd440
Update r1cs traits
2021-03-04 10:36:54 -08:00
howardwu
bfdf3c4dca
Update field trait
2021-03-04 10:36:29 -08:00
howardwu
4f50b44a63
itemize imports
2021-03-04 10:33:51 -08:00
Protryon
d400764e00
parser rewrite
2021-03-03 09:59:24 -08:00
howardwu
2bfb64f83e
Update synthesizer to support new terminology
2021-02-27 13:21:29 -08:00
François Garillot
0d7c6d0b65
Simplifies a number of pattern-matches
...
Into the direct `Result` / `Option` combinator they correspond to, for concision / clarity.
Reviewed from automated suggestions generated from [comby-rust](https://github.com/huitseeker/comby-rust ).
2021-02-26 13:03:04 -08:00
gluax
3e20a9a177
Merge branch 'master' into feature/485-defines
2021-02-25 13:06:40 -05:00
damirka
efd193f187
Merge branch 'master' into console-assert-error
2021-02-25 20:24:43 +03:00
gluax
88bdc45eb1
merge master
2021-02-25 11:56:14 -05:00
gluax
38f5417571
last bit of clean up
2021-02-25 11:48:13 -05:00
Protryon
ed8d2fb11d
remove uuid dependency
2021-02-25 07:40:47 -08:00
howardwu
2e00ff451e
Rename all instances of 'ctx' to 'context'
2021-02-24 18:13:36 -08:00
damirka
6448dac047
Fixes #580
...
- changes error message for console.assert inside main()
- small rewrite of setup command
- adds some autoformatting
2021-02-24 19:17:44 +03:00
gluax
f7314625ff
basic use case works, need to clean up, and test more advanced use cases
2021-02-23 14:38:50 -05:00
bors[bot]
211fcb0195
Merge #678
...
678: Bug 662 Fix r=collinc97 a=gluax
Allows -field values in input values, resolves #662 . Also add tests for that and group - input values. Cleans up the re-written code used in a few places by adding a pub crate function. Depends on #626 .
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <16431709+gluax@users.noreply.github.com>
2021-02-19 22:10:36 +00:00
gluax
c5641a5507
Update compiler/src/value/field/input.rs
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-19 13:25:11 -05:00
gluax
ad6f3fcf84
allow -field values in input values, clean up repeated code
2021-02-18 14:36:38 -05:00
gluax
a7b28fbf0a
resolve all the merge conflicts
2021-02-18 11:39:35 -05:00
bors[bot]
6715f91690
Merge #670
...
670: feature_626/negative-group-contstraints r=collinc97 a=gluax
Resolves #626 . Allows a negative group outside of a pair as well as negative numbers inside a pair group. Waiting to see if the later was necessary in the feature discussion, but I assume it would be.
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
2021-02-17 20:50:30 +00:00
bors[bot]
54a9691b73
Merge #652 #663
...
652: ASG refactor r=collinc97 a=Protryon
## Motivation
This PR makes the ASG more user friendly by using arenas instead of RefCell/Arc:
1. Impossible to leak the ASG by creating a circular strong reference chain
2. We don't need RefCell's everywhere to implement passes
663: Bug 625/fix negative fields not allowed r=collinc97 a=gluax
Resolves #625 . Logic used to do so is in check if first character of string to convert is a negative sign. If so remove first character convert from string to field, and then negate it on the leo side. If first character wasn't a negative sign, do the same as before.
Co-authored-by: Protryon <max.bruce12@gmail.com>
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <16431709+gluax@users.noreply.github.com>
2021-02-17 20:10:30 +00:00
Protryon
29711ff041
clippy
2021-02-16 13:33:22 -08:00
Protryon
bf61820115
asg refactor
2021-02-16 13:32:34 -08:00
gluax
7e7db4d93b
remove comment
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-16 15:12:20 -05:00
gluax
6cdefa7128
remove comment
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-16 15:12:07 -05:00
gluax
ba3ca6069a
refactor Field + PrimeField -> PrimeField, all tests still pass
2021-02-16 14:41:59 -05:00
gluax
8150869c6c
negative groups, and negative group coords allowed
2021-02-16 12:00:08 -05:00
gluax
5bbaf9d999
add non negated field to test, merge master
2021-02-16 09:22:10 -05:00
bors[bot]
a7c9caf4b3
Merge #653
...
653: Fix return type error for input-dependent branches r=collinc97 a=Protryon
This PR fixes failure to handle input-dependent branches. No tests added here since base case is covered, and this only occurs with production constraints. Should fix #535 .
There is an additional issue not solved by this PR on branching on booleans from input.
Co-authored-by: Protryon <max.bruce12@gmail.com>
2021-02-12 23:36:59 +00:00
gluax
eda78dd968
clippy fix
2021-02-12 15:22:59 -05:00
gluax
500a3e76d2
fix negative fields, add test for them
2021-02-12 15:20:58 -05:00
Protryon
0bd324bcb4
fix return type error for input-dependent branches
2021-02-11 08:52:22 -08:00
gluaxspeed
202f056531
fix pushed but depends on pr #638
2021-02-10 11:57:10 -05:00
Collin Chin
770f660f3a
Merge pull request #617 from AleoHQ/const-args
...
[Feature] Const Function Arguments
2021-02-04 23:05:51 -08:00
howardwu
2a4052975f
Fix clippy
2021-02-04 20:34:24 -08:00
howardwu
749e70b5b0
Fix clippy
2021-02-04 20:32:59 -08:00
howardwu
1b99c42470
Adds ASG struct, updates ASG to support debug
2021-02-04 19:21:17 -08:00
howardwu
f80c3d236a
Renames InnerProgram to InternalProgram
2021-02-04 17:31:44 -08:00
howardwu
fb7a9f4a18
Simplify compiler calls
2021-02-04 17:26:29 -08:00
Protryon
9c6eb23a1e
const func arguments
2021-02-04 07:35:12 -08:00
Howard Wu
59aa8ac21c
Merge pull request #603 from AleoHQ/asg-return-check
...
Remove compiler return check
2021-02-03 11:28:35 -08:00
Protryon
fcbb5e4fd9
remove compiler return check
2021-02-02 19:33:41 -08:00
Protryon
b078c6e09f
remove mutable constrainedvalue
2021-02-02 18:37:27 -08:00
Protryon
e028255513
update license headers
2021-02-02 11:31:54 -08:00
Protryon
c417f2f082
fix build
2021-02-02 11:11:43 -08:00
Protryon
ca549258b8
blake2s unwrap muts
2021-02-02 11:08:57 -08:00
Protryon
da52984385
output bytes update
2021-02-02 11:08:57 -08:00
Protryon
80d5c87b8a
asg
2021-02-02 11:08:56 -08:00
howardwu
cbd45e56d7
Resolves unknown clippy flags
2021-02-01 20:39:01 -08:00
howardwu
c935d6a486
Update license to 2021
2021-02-01 20:26:56 -08:00
gluaxspeed
2bda443d9c
added more tests
2021-01-27 12:10:34 -05:00
collin
d7cced6e53
rustup update && cargo clippy
2021-01-26 14:55:15 -05:00
gluaxspeed
29ff3c90b6
error and error message for deprecated test syntax, fmt, clean up
2021-01-25 15:12:10 -05:00
Protryon
3c063d725f
rename conditional expr to ternary
2021-01-14 05:27:31 -08:00
Howard Wu
d3fcd19506
Merge pull request #536 from AleoHQ/fix/return-type-check
...
Fix/return type check
2021-01-12 16:42:13 -04:00
collin
9215d911e6
use eq_flat type comparison method
2021-01-11 21:40:02 -05:00
Collin Chin
5f80cc4642
Merge pull request #532 from huitseeker/no-panic
...
Removes a panic
2021-01-11 20:52:59 -05:00
collin
758cf88de7
fix warnings
2021-01-08 20:08:14 -05:00
collin
c48c39caaf
check output register type == return value type + tests
2021-01-08 20:06:23 -05:00
François Garillot
d41c1b7138
Removes a panic
...
One panic can be folded in the error case of its enclosing `Result`, an `unwrap` call can be elided through pattern-matching reformulation.
2021-01-08 07:12:23 -08:00
Howard Wu
2cde6d0659
Merge pull request #520 from AleoHQ/fix/conditional-logging
...
fix conditional logging bug #407
2021-01-07 20:30:48 -04:00
collin
fea8bb6d1e
Merge branch 'master' of github.com:AleoHQ/leo into ast-cleanup
2021-01-05 13:09:41 -05:00
collin
d28e161706
fix conditional logging bug #407
2021-01-04 11:34:38 -05:00
howardwu
2d64515763
Migrate to snarkVM
2020-12-30 12:40:45 -04:00
howardwu
1d9215a1ac
Migrates to hot 1.1.4 and adds memory usage improvements for programs
2020-12-30 11:32:10 -04:00
Protryon
91cac5f9d0
remove custom eq/hash implementations, add node implementations, remove range_or_expression
2020-12-21 05:58:10 -08:00
Protryon
833eeb7fc5
fix mutable match error
2020-12-16 15:01:15 -08:00
Protryon
6bb3437280
remove unused assign code
2020-12-16 15:01:14 -08:00
Protryon
d1276bd95d
statement breakout
2020-12-16 15:00:45 -08:00
collin
1dbd72c453
Merge branch 'master' of github.com:AleoHQ/leo into expression-breakout
2020-12-16 13:46:43 -05:00