738 Commits

Author SHA1 Message Date
wborgeaud
9f1a5f975c
Charge gas for keccak (#943) 2023-03-29 19:58:29 +02:00
Nicholas Ward
0c87a57f4e addressed comment 2023-03-28 12:15:37 -07:00
Nicholas Ward
e4f2e864cb fix 2023-03-28 12:08:03 -07:00
Nicholas Ward
1a348eed23 check for x < m 2023-03-28 12:02:09 -07:00
Nicholas Ward
bce2572099 documentation 2023-03-28 11:54:14 -07:00
Nicholas Ward
1e5677c4e4 comments 2023-03-28 11:50:05 -07:00
Nicholas Ward
c18377d12f Merge branch 'main' into bignum-modexp 2023-03-28 11:15:27 -07:00
Nicholas Ward
91fb4fc02e fix modexp test 2023-03-28 11:15:01 -07:00
Dmitry Vagner
c3a5fd8631 merge 2023-03-24 11:32:01 -07:00
Daniel Lubarov
911dfedd07 Rework CREATE, CREATE2 syscalls
The old code was outdated in various ways, e.g. it was trying to share code with contract-creation txns, so I would ignore the diff and just look at the new code.

Still a bunch of TODOs left here, like actually saving code that's returned.
2023-03-24 10:43:46 -07:00
Daniel Lubarov
b4eb837346 A few fixes for terminal instructions 2023-03-23 17:28:55 -07:00
wborgeaud
ce22d94518
Access lists (#937)
* Working linear search

* Working linear search for storage keys

* Macros

* Gas for wextaccount

* Add origin and to to the access list

* Handle precompiles

* Fixes

* Other opcodes

* Access list SLOAD

* Minor

* Add TODO for SSTORE

* Comments

* Clippy

* Minor

* PR feedback: cold_access

* PR feedback: simplify insert_accessed_addresses_no_return macro

* Fix sys_selfdestruct

* Store length in global metadata and store arrays in kernel memory

* Truncate address in all *CALL syscalls
2023-03-23 20:22:25 +01:00
Daniel Lubarov
f9fa38d3cd Fix new account insert key 2023-03-22 21:53:33 -07:00
Dmitry Vagner
7ff2122e46 Merge branch 'main' of github.com:mir-protocol/plonky2 into fp381-opcodes 2023-03-22 18:22:37 -07:00
wborgeaud
f4e65feb65
Fix bugs in wcopy and update_mem_words (#934)
* Fix bugs in wcopy and update_mem_words

* Update comment
2023-03-22 19:14:55 +01:00
wborgeaud
15bafce5dd
Implement CREATE2 address generation (#936)
* Implement create2 address gen

* Clippy

* Minor

* Wrong order

* Fix test

* Fix comment
2023-03-22 19:14:17 +01:00
Dmitry Vagner
874805cc65 Merge branch 'fp318' of github.com:mir-protocol/plonky2 into fp381-opcodes 2023-03-22 10:58:19 -07:00
Dmitry Vagner
1627a9a0d3 tests pass 2023-03-22 09:55:35 -07:00
Nicholas Ward
1fbe305034 Merge branch 'main' into bignum-modexp 2023-03-22 09:46:17 -07:00
wborgeaud
06936c7649
Implement various syscalls (#930)
* Bunch of syscalls

* Minor

* Minor

* Minor

* Add todo for overflow
2023-03-22 06:42:14 +01:00
Dmitry Vagner
0e8f6a2f68 test skeleton 2023-03-21 21:17:46 -07:00
Dmitry Vagner
9ea0ebd78f skeleton 2023-03-21 21:10:01 -07:00
Dmitry Vagner
13d2ed90d7 merge 2023-03-21 19:23:54 -07:00
Nicholas Ward
d59501e6a7 fixes, testing, and in-progress debugging 2023-03-21 16:03:54 -07:00
wborgeaud
a79271a8ec
Minor account code fixes (#929)
* Fixes

* Fix

* Newline
2023-03-21 20:15:30 +01:00
Nicholas Ward
24705e1e39 addressed comments 2023-03-21 10:56:25 -07:00
Daniel Lubarov
e1ae539271 Fix test 2023-03-20 23:57:44 -07:00
Daniel Lubarov
afded1682b Contract creation fixes 2023-03-20 23:43:13 -07:00
wborgeaud
893b88c309
Implement syscalls for BALANCE and SELFBALANCE (#922)
* Implement syscalls for BALANCE and SELFBALANCE

* Remove stubs
2023-03-21 05:54:29 +01:00
Daniel Lubarov
fc6487cac0
Merge pull request #926 from mir-protocol/fix_gas
Fix GAS and implement storage value parsing
2023-03-20 18:29:59 -07:00
Daniel Lubarov
3c4bc1d824 Fix GAS and implement storage value parsing 2023-03-20 18:02:20 -07:00
Nicholas Ward
9803581d0a fix 2023-03-20 14:57:02 -07:00
Nicholas Ward
1a78f40050 restored neq macro 2023-03-20 14:34:17 -07:00
Nicholas Ward
511f450add resolved conflicts 2023-03-20 13:09:42 -07:00
Nicholas Ward
4aa212ab84 modexp fix 2023-03-20 13:09:42 -07:00
Nicholas Ward
e06f84dd7c modmul fix 2023-03-20 13:09:42 -07:00
Nicholas Ward
76e70ac476 fixes 2023-03-20 13:09:42 -07:00
Nicholas Ward
4cef5aaa84 modmul and modexp 2023-03-20 13:09:42 -07:00
Nicholas Ward
1e0193566d basic bignum 2023-03-20 13:09:42 -07:00
Nicholas Ward
b16b82613e
Merge pull request #881 from mir-protocol/bignum-basic
Basic bignum operations
2023-03-20 13:09:17 -07:00
Nicholas Ward
f6b9d6ee2e addressed comments 2023-03-20 12:36:07 -07:00
Daniel Lubarov
bdf35374d5 Misc 2023-03-19 23:22:33 -07:00
Daniel Lubarov
b80a28dbd1 Misc 2023-03-19 22:52:49 -07:00
Daniel Lubarov
47fac8e35b Couple fixes & minor refactor 2023-03-19 22:35:53 -07:00
Nicholas Ward
64c76e76dd Merge branch 'main' into bignum-basic 2023-03-19 22:19:54 -07:00
Daniel Lubarov
f717a40b85 Charge for memory expansion 2023-03-19 20:17:30 -07:00
Nicholas Ward
e8405effa1 Merge branch 'main' into bignum-basic 2023-03-19 17:29:51 -07:00
Daniel Lubarov
7ed53142a0 Fix reads from not-found ext nodes 2023-03-19 14:13:42 -07:00
Daniel Lubarov
a05ed9fc3a Fix clobbering of RLP data memory 2023-03-19 11:49:15 -07:00
Nicholas Ward
c3ba7a8917 Merge branch 'main' into bignum-basic 2023-03-17 14:19:36 -07:00