1
0
Fork 0
mirror of synced 2025-09-23 12:18:44 +00:00
Commit graph

684 commits

Author SHA1 Message Date
schaeff
6eb0efe1ce add member access to untyped absy 2019-07-26 19:15:44 +02:00
schaeff
0bd41abf2a add struct definition to untyped ast 2019-07-26 19:09:54 +02:00
schaeff
f35abd559c add member access to parser 2019-07-26 18:30:01 +02:00
schaeff
210428a59c update v2 contracts 2019-07-26 12:26:11 +02:00
schaeff
1960515165 add range check on public inputs in solidity verifiers 2019-07-26 11:48:04 +02:00
schaeff
e0eaa6b35b make imports public 2019-07-25 18:39:35 +02:00
schaeff
4db956d7ea make resolve string based only, remove automatic alias for now 2019-07-25 18:36:57 +02:00
schaeff
3d5971b1dc use type aliases in resolvers, make location mandatory 2019-07-24 18:37:11 +02:00
schaeff
28d97959a1 remove all bufreaders, replace with string 2019-07-23 17:50:49 +02:00
schaeff
2e17229eaf add tests 2019-07-16 17:22:10 +02:00
schaeff
22619be774 Merge branch 'generalize-arrays' of github.com:Zokrates/ZoKrates into rec-arrays 2019-07-16 16:40:56 +02:00
schaeff
3fc34086ea fix equality for wasm solvers 2019-07-16 15:48:47 +02:00
schaeff
b2fcb4c271 fully recursive arrays 2019-07-16 15:31:25 +02:00
schaeff
34f41dc53f merge modules 2019-07-15 16:31:52 +02:00
schaeff
24fe46301f remove other changes 2019-07-15 11:48:52 +02:00
schaeff
c312d3423d use crate 2019-07-15 11:46:03 +02:00
schaeff
e89d60be04 make if_else generic 2019-07-11 15:54:51 +02:00
schaeff
6e6d90f638 make flatten_array_expr generic over inner type 2019-07-11 13:03:33 +02:00
schaeff
2cd3943207 remove unimplemented 2019-07-11 00:50:14 +02:00
schaeff
f6bae357fd remove unused 2019-07-11 00:04:42 +02:00
schaeff
574f1f1c7d fix bound 2019-07-10 23:44:29 +02:00
schaeff
84b35cef20 deduplicate code using Flatten trait 2019-07-10 23:23:35 +02:00
schaeff
0f74b4990b Merge branch 'develop' of github.com:Zokrates/ZoKrates into generalize-arrays 2019-07-10 19:37:10 +02:00
schaeff
f5373acd57 merge dev 2019-07-10 19:33:33 +02:00
JacobEberhardt
f425e0ae37 Merge branch 'develop' into exponentiation 2019-07-10 11:24:12 +02:00
schaeff
36d1e3ebac fix tests 2019-07-10 09:43:32 +02:00
schaeff
05d8ae9b99 fix tests 2019-07-10 09:35:14 +02:00
schaeff
a83a68ec53 document, remove imports in typed_absy, revert example 2019-07-10 00:07:20 +02:00
schaeff
e2e644364e merge dev 2019-07-09 23:29:32 +02:00
schaeff
4dde51a828 fix wasmi version 2019-07-09 17:45:10 +02:00
schaeff
c182a9a81c reove warning in backend 2019-07-09 17:15:48 +02:00
schaeff
662d856f7f improve flatten doc, remove deprecated warning 2019-07-09 17:11:30 +02:00
schaeff
72616f8c5c clean and comment semantics checker 2019-07-09 16:52:51 +02:00
JacobEberhardt
f753f99a76 Removed static check, that base of exponentiation is identifier or constant. Can be any expression now. 2019-07-09 13:44:15 +02:00
JacobEberhardt
df1ef5947a
Merge pull request #399 from Zokrates/add-boolean-constants
Add boolean constants
2019-07-06 00:52:36 +02:00
schaeff
4abfc12efb address comments 2019-07-06 00:28:58 +02:00
Thibaut Schaeffer
8e7867907a
Merge pull request #400 from Zokrates/add-boolean-propagation
Add boolean constant propagation
2019-07-05 23:52:09 +02:00
Thibaut Schaeffer
4a053c91a6
Merge pull request #411 from Zokrates/double-and-add-exponentiation
Exponentiation by squaring
2019-07-05 23:48:47 +02:00
Thibaut Schaeffer
18d7efcde2
Merge branch 'develop' into app_testing 2019-07-05 23:35:58 +02:00
schaeff
87588f39c3 fix core test 2019-07-05 22:58:38 +02:00
schaeff
fc7bcd320e fix semantic tests 2019-07-05 22:04:12 +02:00
schaeff
b7376173b3 improve cli flag for abi 2019-07-05 12:07:22 +02:00
Paul Etscheit
7fd7b1766a
Update pghr13.rs
Changes argument from reference to to variable
2019-07-05 11:29:52 +02:00
Paul Etscheit
40751ec5e6
Update gm17.rs
Changes argument from reference to variable
2019-07-05 11:28:04 +02:00
schaeff
64e785bde6 remove undefined vars, remove ref to stack var 2019-07-05 11:10:26 +02:00
schaeff
ac46518c96 integrate ethereum deployment with integration tests, remove duplicated code in js script 2019-07-04 18:11:02 +02:00
schaeff
0ee24f90b2 fix git issue 2019-07-04 15:38:42 +02:00
schaeff
6bf9b46eaf merge dev, github resolver unimplemented 2019-07-03 20:34:29 +02:00
schaeff
54fed2176f reanable inliner 2019-07-03 16:34:48 +02:00
schaeff
6672ffb56a document and fix tests in inliner 2019-07-03 16:33:46 +02:00
schaeff
f596e7c4d8 unify embeds 2019-07-03 14:47:43 +02:00
Stefan
89d74f085d
Merge pull request #404 from Zokrates/optimize-zero-quadratic-comb
Optimize zero quadratic combinations
2019-07-03 10:20:12 +02:00
schaeff
97b4b5bb13 introduce FlatEmbed, remove flat_resolver, make sure calls to FlatEmbed are resolved in flattening, make flattening inlining stricter 2019-07-03 00:19:06 +02:00
schaeff
a1564d05bd remove corelib 2019-07-01 21:04:43 +02:00
schaeff
003bc5ef7a remove core lib, reimplement if_else manually in flattening 2019-07-01 20:25:13 +02:00
schaeff
9e14f28ff4 add flat resolving 2019-07-01 19:17:54 +02:00
Paul E
e0510d0518 moved contract nesting to another folder due to test error and changed build step 2019-06-29 16:25:47 +02:00
Paul E
ae7ee29a5b added contract tests to integration_test circleci job 2019-06-29 15:22:21 +02:00
Paul E
a12201060e testing integration test integration 2019-06-29 14:44:05 +02:00
Paul E
fc60aa97e8 Implements abiv2 into cli and core 2019-06-28 14:04:52 +02:00
schaeff
b20174b78b implement double and add, or square-and-multiply 2019-06-26 00:03:19 +02:00
schaeff
3c093fbcad Merge branch 'duplicate-optimizer' of github.com:Zokrates/ZoKrates into generalize-arrays 2019-06-25 18:53:38 +02:00
schaeff
011ae45367 Merge branch 'develop' of github.com:Zokrates/ZoKrates into duplicate-optimizer 2019-06-25 18:50:28 +02:00
schaeff
ecac773432 implement deduplication 2019-06-25 18:23:07 +02:00
schaeff
3ba608ccce create optimizer structure 2019-06-25 15:39:00 +02:00
schaeff
efc46e7cea make tests pass 2019-06-25 15:15:05 +02:00
schaeff
25d2dffbec bump versions 2019-06-23 12:09:15 +02:00
schaeff
64dc3d0db1 only show identifier name, show variable name in undefined message 2019-06-22 22:05:39 +02:00
schaeff
c7c20c4342 Merge branch 'optimize-zero-quadratic-comb' into generalize-arrays 2019-06-22 19:23:05 +02:00
schaeff
c6ba6e7bb5 zero is a lincomb 2019-06-22 17:33:57 +02:00
schaeff
17f9473c51 make arrays generic over types. wip 2019-06-22 17:24:18 +02:00
schaeff
dfabfa06ef Merge branch 'add-boolean-propagation' of github.com:Zokrates/ZoKrates into generalize-arrays 2019-06-22 14:20:28 +02:00
schaeff
8b431f0b23 Merge branch 'add-boolean-constants' of github.com:Zokrates/ZoKrates into generalize-arrays 2019-06-22 14:20:18 +02:00
schaeff
c4b6bd2b8b test boolean constant 2019-06-22 14:14:32 +02:00
schaeff
9fcaaadc66 fix comment 2019-06-22 14:11:43 +02:00
schaeff
1a1005cf94 add tests 2019-06-22 13:09:29 +02:00
schaeff
afc1d85247 add boolean propagation 2019-06-22 11:31:49 +02:00
schaeff
513d4276cf add boolean constraints true and false to grammar, pest ast, and untyped ast 2019-06-22 01:00:16 +02:00
schaeff
be375073d1 generalize arrays. wip, basic boolean array mvp 2019-06-22 00:30:33 +02:00
Mustafa Al-Bassam
4a802a8d40 remove pure from G2 addition function header 2019-06-19 18:16:47 +01:00
Mustafa Al-Bassam
0461635ced Update G2 Solidity library to 42230d81dc401911c3e152d432c27f51a514098f 2019-06-19 17:43:45 +01:00
schaeff
30d9efd793 remove print 2019-06-16 23:17:25 +02:00
schaeff
d7a37b6b5f bump versions 2019-06-16 23:15:42 +02:00
schaeff
0c24dff9cd merge spread 2019-06-16 21:17:29 +02:00
schaeff
e7142cfb90 merge dev 2019-06-16 21:00:47 +02:00
schaeff
3d06ee1d5c implement read-only array slices 2019-06-16 09:45:53 +02:00
schaeff
22fd4f8b5c implement spread operator inside inline arrays 2019-06-15 00:42:14 +02:00
schaeff
ec4d3a4a87 change unimplemented to unreachable 2019-06-14 18:28:37 +02:00
schaeff
31b4196d61 add array initializer sugar 2019-06-14 18:25:14 +02:00
schaeff
fb3b4eb369 bump versions 2019-06-13 18:18:05 +02:00
Thibaut Schaeffer
9fb6d3fef6
Merge pull request #378 from Zokrates/merge-046-back
Merge 0.4.6 back
2019-06-12 22:44:57 +02:00
schaeff
0f40498ba9 reset cargo.lock 2019-06-12 20:08:32 +02:00
schaeff
2c8370138e clean 2019-06-12 20:03:11 +02:00
schaeff
3b740baee6 remove logs 2019-06-12 17:49:22 +02:00
schaeff
bbfc9ccb26 remove from_flat assert, cache flat_fun in flatten 2019-06-12 17:38:47 +02:00
schaeff
e655b99dcc remove linear check 2019-06-12 16:03:28 +02:00
schaeff
934bf0905c solve inliner conflicts, fix tests 2019-06-12 13:58:12 +02:00
schaeff
9144bc2574 enable imports with arena 2019-06-11 18:55:07 +02:00
schaeff
cdf394c7e1 solve conflicts except compile loop 2019-06-11 11:12:37 +02:00
schaeff
0a15168b01 remove println 2019-06-07 15:55:24 +02:00
schaeff
3bfc547f32 revert change 2019-06-07 14:45:55 +02:00
schaeff
3e410f84ee add use_parameter for functions in flattening to add boolean constraints 2019-06-07 14:30:23 +02:00
schaeff
ba9d59d18d clean 2019-06-06 19:38:26 +02:00
schaeff
addf79f20e adapt inliner, remove String from function name, add stack to typed identifier 2019-06-06 19:06:16 +02:00
schaeff
2a7b33f8c1 fix tests 2019-06-06 17:25:06 +02:00
schaeff
ed29fad8da add corelib, update use_sym to not register to the memory layout 2019-06-06 14:31:54 +02:00
schaeff
c4dec182d0 implement array flattening, remove bimap 2019-06-06 14:12:56 +02:00
schaeff
8ba7611aa0 make typed ast string free. wip 2019-06-05 21:38:16 +02:00
schaeff
9340825c17 remove from impl for assignee 2019-06-04 15:44:42 +02:00
schaeff
6877f1a589 remove strings from absy and replace with references to the input source 2019-06-04 15:42:17 +02:00
schaeff
5f040f484e improve error messages in from_ast 2019-06-03 17:55:54 +02:00
schaeff
bf79194888 improve ast conversion error messages 2019-06-03 17:42:34 +02:00
schaeff
1bd3658372 pass span, information to ast 2019-06-03 17:16:19 +02:00
schaeff
361f9cbc63 merge dev 2019-06-03 16:21:13 +02:00
schaeff
2da3878093 fix imports 2019-06-03 15:57:16 +02:00
schaeff
28787cc42d fix warnings 2019-06-03 10:43:16 +02:00
schaeff
365d03be65 bring pest parser and AST into tree as crates, adjust testing 2019-06-03 10:22:59 +02:00
schaeff
20e12c10ea merge dev 2019-05-30 10:02:32 +02:00
schaeff
c06ca06cb7 register functionsymbol sourcemap 2019-05-29 19:37:58 +02:00
schaeff
a946299c71 adapt flatten tests 2019-05-28 14:51:50 +02:00
schaeff
39685271d9 improve inliner 2019-05-28 11:55:39 +02:00
schaeff
41a1b4d675 remove print 2019-05-27 11:19:19 +02:00
schaeff
645ea26dc2 use flattener technique for inliner 2019-05-24 13:19:08 +02:00
schaeff
7ebd8b9aad implement inliner.wip 2019-05-23 19:32:34 +02:00
schaeff
4c5b9d5376 implement inliner.wip 2019-05-23 19:32:28 +02:00
Paul E
2f37ee62bf fixes issue #347 2019-05-22 11:14:22 +02:00
schaeff
25bdb65d20 inliner wip 2019-05-21 21:50:43 +02:00
schaeff
b795feb7aa fix positions in imports, fix flatten test 2019-05-21 15:57:46 +02:00
schaeff
68dcaa1b15 remove imported functions, remove functions_flattened from flattening, move corelib to static analyser step, clean 2019-05-21 15:30:44 +02:00
schaeff
50befe7804 remove diplay from typedfunctionsymbol, implement on module directly 2019-05-21 12:45:08 +02:00
schaeff
a7995b26dc use FunctionKey for flattening 2019-05-21 12:26:21 +02:00
schaeff
04b95e6b36 define FunctionImport as ast node, remove FunctionSymbol node 2019-05-21 11:55:21 +02:00
schaeff
5fa5bd7b78 introduce FunctionDeclaration to help with function symbol checking 2019-05-20 18:17:57 +02:00
schaeff
48b0a0f4cf implement display for FunctionSymbol 2019-05-20 16:25:50 +02:00
schaeff
fe54a62d27 remove dead code optimizer and inliner as they explore the call graph not the dependency graph, implement display for typed prog 2019-05-20 16:18:21 +02:00
schaeff
f663ddfb8e adapt semantics tests 2019-05-20 15:49:37 +02:00
schaeff
624b113352 implement module map instead of rc 2019-05-17 20:57:33 +02:00
schaeff
e978cf07f7 implement external functions in typed absy 2019-05-15 15:04:52 +02:00
schaeff
a5df1febff change compile to not flatten, update semantic checker 2019-05-15 11:12:11 +02:00
schaeff
e50364063a complete switch to hashmap 2019-05-14 13:41:33 +02:00
schaeff
ba0a740b73 use hashmap for typed ast functions. WIP 2019-05-13 23:09:02 +02:00
schaeff
c6219be41d process external functions in semantics 2019-05-13 20:59:54 +02:00
schaeff
801c63384d fix typo in proof serialization... 🤦 2019-05-10 16:04:25 +02:00
schaeff
372c48a57d bump version 2019-05-10 11:23:15 +02:00
schaeff
1c550c7c80 revert regex version change 2019-05-09 17:46:49 +02:00
schaeff
20790b72ff switch to regex for parsing 2019-05-09 17:45:41 +02:00
schaeff
5f83bc86e7 introduce FunctionSymbol and adapt local functions 2019-05-08 17:42:32 +02:00
schaeff
da3ef6ae63 merge dev 2019-05-07 14:53:13 +02:00
schaeff
3335ad599a use canonical representation in backend 2019-05-07 12:20:31 +02:00
schaeff
f8d63e3a38 rename prog to module in absy 2019-04-23 17:56:19 +02:00