3962 Commits

Author SHA1 Message Date
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
Nicholas Ward
7028b6ba74 comment 2023-03-22 18:48:02 -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
Dima V
1ce47cebc5
Merge pull request #906 from mir-protocol/fp318
Generalize rust code for field extension arithmetic to be base-field agnostic
2023-03-22 17:40:58 -07:00
Dmitry Vagner
0650d2636c remove .scale 2023-03-22 17:26:14 -07:00
Dmitry Vagner
3f4d970f15 Merge branch 'main' of github.com:mir-protocol/plonky2 into fp318 2023-03-22 16:58:54 -07:00
Dmitry Vagner
c8d2769c28 fmt 2023-03-22 11:58:51 -07:00
Dmitry Vagner
74afec70ed remove imports 2023-03-22 11:56:58 -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
645ef664a2 comment 2023-03-22 10:58:09 -07:00
Dmitry Vagner
63ec13e24b Merge branch 'main' of github.com:mir-protocol/plonky2 into fp318 2023-03-22 10:57:30 -07:00
Dmitry Vagner
3425391a09 more comments 2023-03-22 10:57:26 -07:00
wborgeaud
d0b2b81e11
More MemoryError (#932) 2023-03-22 18:43:41 +01:00
Dmitry Vagner
1f3e3de77c clean and generalize 2023-03-22 10:16:02 -07:00
Dmitry Vagner
1627a9a0d3 tests pass 2023-03-22 09:55:35 -07:00
Nicholas Ward
e471818c2b comments 2023-03-22 09:48:17 -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
84a0bcf893 cleanup 2023-03-21 21:28:15 -07:00
Dmitry Vagner
373062b2a3 on stack 2023-03-21 21:22:08 -07:00
Dmitry Vagner
0e8f6a2f68 test skeleton 2023-03-21 21:17:46 -07:00
Dmitry Vagner
392c29f412 compiles 2023-03-21 21:16:19 -07:00
Dmitry Vagner
9ea0ebd78f skeleton 2023-03-21 21:10:01 -07:00
Dmitry Vagner
1437affcfd fmt 2023-03-21 19:26:06 -07:00
Dmitry Vagner
b847d16e13 redundancy 2023-03-21 19:25:28 -07:00
Dmitry Vagner
13d2ed90d7 merge 2023-03-21 19:23:54 -07:00
Dmitry Vagner
54b8ce74ab Merge branch 'main' of github.com:mir-protocol/plonky2 into fp318 2023-03-21 19:22:13 -07:00
Dmitry Vagner
143225f449 finish 2023-03-21 19:19:02 -07:00
Nicholas Ward
d928423c63 cleanup 2023-03-21 16:18:53 -07:00
Nicholas Ward
d59501e6a7 fixes, testing, and in-progress debugging 2023-03-21 16:03:54 -07:00
Dmitry Vagner
fc72ce46c5 fp6 works 2023-03-21 13:55:51 -07:00
Dmitry Vagner
4d83c58d1f frob works 2023-03-21 13:51:11 -07:00
wborgeaud
2df1439d35
Return error instead of panic in memory operation (#928) 2023-03-21 20:15:46 +01:00
wborgeaud
a79271a8ec
Minor account code fixes (#929)
* Fixes

* Fix

* Newline
2023-03-21 20:15:30 +01:00
Dmitry Vagner
caaf3b4a34 merge fields 2023-03-21 11:42:46 -07:00
Dmitry Vagner
cf1e6a76f3 Merge branch 'main' of github.com:mir-protocol/plonky2 into fp318 2023-03-21 11:25:23 -07:00
Nicholas Ward
24705e1e39 addressed comments 2023-03-21 10:56:25 -07:00
Daniel Lubarov
ff81a565ef
Merge pull request #927 from mir-protocol/creation_fixes
Contract creation fixes
2023-03-21 00:06:19 -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
be309a388f cleanup from comments 2023-03-20 16:12:52 -07:00
Nicholas Ward
42d65839e7 addressed comments 2023-03-20 15:07:02 -07:00