529 Commits

Author SHA1 Message Date
Dmitry Vagner
9f808fc78c align 2023-02-07 08:53:23 -08:00
Dmitry Vagner
1c73e23824 fp -> fp254 2023-02-05 17:43:31 -08:00
Dmitry Vagner
0f030fae4a naming for global labels 2023-02-05 17:40:04 -08:00
Dmitry Vagner
c107c5055e comments 2023-02-01 19:30:04 -08:00
Dmitry Vagner
cd5c92b574 merge 2023-02-01 08:51:42 -08:00
wborgeaud
ca002aeafa
Optimize ecrecover ASM (#840)
* windowed mul

* Working

* Window of 4 bits

* Fix

* Comments

* Unroll loop

* Unroll loop

* remove global

* Minor

* Minor

* Implement `CALLVALUE, CALLDATALOAD, CALLDATASIZE, CALLDATACOPY` in interpreter

* Minor

* Doesn't work

* Minor

* Minor

* wnaf msm

* Working hardcoded values: 28657 opcodes

* Working wnaf

* Small wnaf optim

* Precompute works

* Working together

* Bump to 129 bits

* Working glv decomposition

* Working MSM with GLV

* Almost working

* Working

* ECC test folder

* Working with real sig data

* Fix tests + Clippy

* Minor

* Cleaning

* Comments

* Cleaning

* Smaller glv test file

* Print opcode count at the end of interpreter run

* More constants

* Add z3 proof that the GLV scalars are 129-bit or less

* Minor change to z3 proof

* Minor

* Hamish's suggestion

* Working

* Cleaning

* Clippy

* PR feedback

* Minor PR feedback
2023-01-31 19:23:54 +01:00
Dmitry Vagner
6e8d4a57a4 fix 2023-01-25 16:48:28 +07:00
Dmitry Vagner
0eef28af66 bools 2023-01-25 16:41:42 +07:00
Dmitry Vagner
6958d46c56 names and comments 2023-01-25 16:26:41 +07:00
Dmitry Vagner
56be7317e0 comments 2023-01-25 16:20:24 +07:00
Dmitry Vagner
f0a6ec9535 clean asm 2023-01-25 14:42:30 +07:00
Dmitry Vagner
d98c69f0bc better comments 2023-01-25 14:12:29 +07:00
Dmitry Vagner
0b81258af3 stack macros 2023-01-24 17:18:13 +07:00
Dmitry Vagner
c9b005d22e new power works 2023-01-24 17:08:29 +07:00
Dmitry Vagner
5deb164865 refactor power 2023-01-24 16:35:49 +07:00
Dmitry Vagner
60cbdde879 clean 2023-01-24 14:56:15 +07:00
Dmitry Vagner
ec4cddb7c9 inv as method 2023-01-23 14:59:08 +07:00
Dmitry Vagner
d2aa937a2f improved prover input and test api 2023-01-21 13:19:07 +07:00
Dmitry Vagner
e06a2f2d46 duh 2023-01-21 00:56:38 +07:00
Dmitry Vagner
a5c292c751 space 2023-01-21 00:33:09 +07:00
Dmitry Vagner
d99cadebc2 stack macro 2023-01-20 16:03:24 +07:00
Dmitry Vagner
b2f9d885f9 remove redundant macros and improve comments 2023-01-20 15:59:14 +07:00
Dmitry Vagner
3fcb559123 redundant macro 2023-01-20 15:01:54 +07:00
Dmitry Vagner
c74a0c2500 test inv from memory 2023-01-20 14:58:34 +07:00
Dmitry Vagner
abab6bf1e1 test frob from memory 2023-01-20 14:52:44 +07:00
Dmitry Vagner
5f2baea0df mul test from memory 2023-01-20 13:59:39 +07:00
Dmitry Vagner
b44d9e2db2 Merge branch 'main' of github.com:mir-protocol/plonky2 into non-inv 2023-01-20 12:47:23 +07:00
Daniel Lubarov
f2e40541d9 Increment sender nonce + buy gas 2023-01-17 23:57:53 -08:00
Dmitry Vagner
9cd1f8a1b2 Merge branch 'main' of github.com:mir-protocol/plonky2 into non-inv 2023-01-18 00:41:18 +07:00
Daniel Lubarov
df2ba7a384 Basic smart contract test 2023-01-14 21:18:58 -08:00
Dmitry Vagner
3fbc8bff3e move comment 2023-01-13 09:09:27 +04:00
Dmitry Vagner
e6bcad6c65 Merge branch 'non-inv' of github.com:mir-protocol/plonky2 into non-inv 2023-01-13 08:58:31 +04:00
Dmitry Vagner
446a0d3f56 name 2023-01-13 08:58:17 +04:00
Dima V
81861095d3
Update evm/src/cpu/kernel/asm/curve/bn254/field_arithmetic/inverse.asm
Co-authored-by: Jacqueline Nabaglo <jakub@mirprotocol.org>
2023-01-12 20:57:54 -08:00
Dmitry Vagner
70d7fb1352 cleaner inv 2023-01-13 08:47:15 +04:00
Dima V
32f24819dd
Update evm/src/cpu/kernel/asm/curve/bn254/curve_arithmetic/curve_add.asm
Co-authored-by: Jacqueline Nabaglo <jakub@mirprotocol.org>
2023-01-12 20:36:47 -08:00
Dmitry Vagner
82ce8153cc \n 2023-01-11 17:54:43 +04:00
Dmitry Vagner
5cd86b6652 names and format 2022-12-30 20:58:04 -08:00
Dmitry Vagner
2b91a1a664 simplify miller loop 2022-12-30 20:08:22 -08:00
Dmitry Vagner
77798f889e remove loop endpoint 2022-12-29 14:12:03 -08:00
Dmitry Vagner
de8637ce8c name 2022-12-29 14:03:52 -08:00
Dmitry Vagner
c0744d76b9 TATE TEST PASSES 2022-12-27 18:38:20 -08:00
Dmitry Vagner
826702a756 clean 2022-12-27 16:00:16 -08:00
Dmitry Vagner
e35644e9e0 miller test passes 2022-12-27 14:55:47 -08:00
Dmitry Vagner
ef824110fd miller in rust 2022-12-27 14:16:22 -08:00
Dmitry Vagner
b1f31cafec more cleaning 2022-12-22 17:07:24 -08:00
Dmitry Vagner
3c566e987c tangent and cords work 2022-12-20 21:53:52 -08:00
Dmitry Vagner
bde569a2f3 it runs 2022-12-20 18:36:00 -08:00
Dmitry Vagner
bf7da1c205 POP 2022-12-20 18:31:26 -08:00
Dmitry Vagner
41476ce451 fix 2022-12-20 17:32:06 -08:00