927 Commits

Author SHA1 Message Date
wborgeaud
8c78271f5c
Add random value to block metadata and fix sys_prevrandao (#1207)
* Add random to block metadata and fix `sys_prevrandao`

* Minor

* Observe block_random

* Write block_random

* cargo fmt

* block_random: H256

* Move sys_prevrandao to metadata.asm and delete syscall_stubs.asm

* Set block_random in set_block_metadata_target

* Minor

* Minor
2023-09-25 18:20:22 +02:00
Robin Salen
053553d4d7
Reuse new packing instructions for MLOAD and MSTORE 2023-09-18 16:31:46 -04:00
Robin Salen
8903aec129
Change padding rule for CPU (#1234)
* Change padding rule for CPU

* Disable memory channels for padding rows

* Apply some of Jacqueline's comments

* Update halt routine

* Add clarifying comment

* Redundant constraints and padding bug

* Revert "Remove is_bootstrap_kernel column"

This reverts commit 49d92cb8f1b0ae9de76872f76af4429699ff692f.

* Make halt_state implicit

* Move halting logic constraints to dedicated module

* Include new module

* Update some comments
2023-09-15 17:46:58 -04:00
Robin Salen
7ebbb47fcd
Swap ordering in stack macro (#1230)
* Swap ordering in stack macro

* Update comment
2023-09-13 08:39:01 -04:00
Robin Salen
9508b49090
Move byte packing / unpacking to a distinct table (#1212)
* Duplicate Memory trace into BytePacking one

* Add mload_32bytes instruction

* Use dedicated ops for byte packing trace

* Change witness generation to reduce memory reads for MLOAD_32BYTES

* Remove segments

* Fix stack

* Fix extra product when fixing CTL for byte_packing

* Write output value in trace

* Add constraints for BYTE_PACKING table

* Add recursive constraints for BYTE_PACKING table

* Fix constraints

* Add address in trace and constraints

* Add timestamp and batch inputs into BytePackingOp struct

* Add extra column

* Fix BytePackingStark CTL

* Tiny fix in witness generation

* Fix the Memory CTL

* Add constraints for the new columns

* Remove 1 column

* Remove limb columns

* Fix

* Fix recursive circuit of BytePackingTable

* Fix constraints

* Fix endianness

* Add MSTORE_32BYTES instruction and move decomposition to packing table

* Add missing constraint

* Add range-check for all bytes

* Add extra constraint

* Cleanup

* Remove REMAINING_LEN column

* Add corresponding implementations in interpreter

* Fix recursive version

* Remove debug assertion because of CI

* Remove FILTER column

* Update new test from rebasing

* Reorder STARK modules to match TraceCheckPoint ordering

* Address comments

* Pacify clippy

* Add documentation to the packing module

* Fix doctest
2023-09-13 04:45:37 +10:00
Linda Guiga
1c01d682aa
Fix overflow check and test. Remove [..8] when using h256_limbs. 2023-09-07 09:44:00 +01:00
Linda Guiga
4e0fe74a74
Apply comments 2023-09-07 09:43:59 +01:00
Linda Guiga
42f7038031
Add blockhash sys opcode 2023-09-07 09:43:59 +01:00
Linda Guiga
6207f4465a
Merge pull request #1206 from topos-protocol/missing-public-value-links
Add missing links between public values
2023-09-06 18:53:15 +01:00
Linda Guiga
bf21b278d8
Apply comments 2023-09-05 08:22:53 +01:00
Linda Guiga
9ba2b895b9
Implement receipts of types 1 and 2 2023-09-04 15:03:18 +01:00
Linda Guiga
b07644368f
Add missing links between public values 2023-08-31 13:40:13 +01:00
Robin Salen
c0b4f155f4
Implement receipts and logs
Co-authored-by: Hamy Ratoanina <hamy.ratoanina@toposware.com>
Co-authored-by: Linda Guiga <lindaguiga3@gmail.com>
2023-08-22 20:00:49 +01:00
Linda Guiga
06e20f87b6
Apply comment 2023-08-19 18:24:35 +01:00
Linda Guiga
d70d67fad4
Remove copy on write for mpt_insert and mpt_delete 2023-08-18 16:53:40 +01:00
wborgeaud
df07ae093a
Write trie roots to memory before kernel bootstrapping (#1172)
* Write trie roots

* Remove CPU trace length

* Update hash_initial/final_tries

* Fix tests

* Minor

* PR feedback
2023-08-09 10:15:13 +02:00
Nicholas Ward
897e2e99e7 fix 2023-06-21 12:32:39 -07:00
Nicholas Ward
54cf74ac2d addressed comments 2023-06-21 09:03:43 -07:00
Nicholas Ward
bc53ddc56f fix 2023-06-20 12:01:24 -07:00
Nicholas Ward
264192aa05 modexp uses current_general 2023-06-20 11:56:21 -07:00
Nicholas Ward
39d2237dee
Merge pull request #1101 from mir-protocol/blake_fix
Blake fix
2023-06-16 07:30:47 -07:00
wborgeaud
ef8ea64dda Minor 2023-06-16 09:35:00 +02:00
wborgeaud
7559bb2f5b Minor 2023-06-16 09:31:16 +02:00
wborgeaud
c8ff80caa2 Fix blake2 fix 2023-06-16 09:23:53 +02:00
Nicholas Ward
7ca5676808 fix 2023-06-15 21:57:22 -07:00
Nicholas Ward
246eb8d80c blake fix 2023-06-15 21:51:09 -07:00
Jacqueline Nabaglo
23bc390a83
Merge pull request #1095 from mir-protocol/jacqui/push0-opcode
PUSH0
2023-06-14 22:06:18 -07:00
wborgeaud
564864eac3
Remove parts of the copy-on-write logic (#1096)
* Remove parts of the copy-on-write logic

* Minor
2023-06-14 14:46:49 +02:00
Jacqueline Nabaglo
cedeff5219 PUSH0 2023-06-13 13:29:30 -07:00
wborgeaud
01efa0130e
Fix account touch in calls (#1093) 2023-06-13 09:57:34 +02:00
wborgeaud
ba705703a5
Use current context for pairing memory (#1091) 2023-06-12 22:55:38 +02:00
wborgeaud
9838a367ae
Check call depth in create (#1089) 2023-06-08 12:59:38 +02:00
wborgeaud
e51c4d0d21
Set returndata size to 0 in some create errors (#1088) 2023-06-08 12:09:28 +02:00
wborgeaud
d37c545591
Increment call depth in precompiles (#1087) 2023-06-08 12:08:28 +02:00
wborgeaud
56e7ad0037
Fix LOG* gas (#1086) 2023-06-08 12:08:15 +02:00
wborgeaud
68b15ea503
Fix CALLDATALOAD for large offsets (#1085) 2023-06-08 12:08:02 +02:00
wborgeaud
f852984e07
Implement PREVRANDAO as if it was DIFFICULTY (#1084) 2023-06-08 12:07:48 +02:00
Jacqueline Nabaglo
0117541909
Merge pull request #1071 from mir-protocol/jacqui/bad-opcode-witness-generation
Error handling
2023-06-07 15:49:07 -07:00
Jacqueline Nabaglo
ae290dbf11 William PR comments 2023-06-07 14:58:59 -07:00
wborgeaud
0f7e1c0b61
Call stack depth (#1081) 2023-06-07 18:54:06 +02:00
wborgeaud
0f8743174e
Minor fix to REVERT (#1080) 2023-06-07 16:06:31 +02:00
wborgeaud
90bb4741b3
RIPEMD doesn't get untouched (#1079) 2023-06-07 13:50:23 +02:00
wborgeaud
fd48e5d1bc
Contract creation fixes (#1078)
* Minor fixes in contract creation

* Minor
2023-06-07 13:29:58 +02:00
wborgeaud
77f0d8b58f
Don't revert state in CREATE in case of OOF or nonce overflow (#1077) 2023-06-07 10:41:58 +02:00
wborgeaud
63a6e70646
Fill BLOCKHASH and PREVRANDAO syscalls with dummy code (#1076) 2023-06-07 10:13:51 +02:00
wborgeaud
0e23606e77
Revert #1074 (#1075) 2023-06-06 18:22:41 +02:00
wborgeaud
5a13b62d1c
Don't overwrite existing account (#1074) 2023-06-06 11:16:15 +02:00
wborgeaud
55b29cacf8
Remove bootloader.asm (#1072) 2023-06-04 19:17:58 +02:00
Jacqueline Nabaglo
3ecf530956 Minor bugfixes 2023-06-04 10:05:28 -07:00
wborgeaud
1d804e46cc
Fix stack after precompiles (#1061)
* Fix precompiles stack

* Fix EXPMOD bugs (#1063)

* Fix expmod gas

* Overflow checks

* Many fixes

* Minor
2023-06-03 10:00:56 +02:00