936 Commits

Author SHA1 Message Date
Robin Salen
6d2586ef58
Amortize bloom reset 2023-10-21 14:39:34 -04:00
Robin Salen
49976ea2a9
Check gas in sys_stop (#1297) 2023-10-19 07:55:39 -04:00
wborgeaud
762e6f07b8
Fix hash node case in mpt_delete_branch (#1278)
* Fix

* Add test

* Fix test

* Clippy
2023-10-11 18:57:17 +02:00
Linda Guiga
d7990ee137
Add journal entry for logs (#1286)
* Add journal entry for logs

* Move journal labels to another file.

* Minor cleanup
2023-10-11 10:36:23 -04:00
wborgeaud
9fd0425f67
Fix journal order in sys_selfdestruct (#1287)
* Fix

* Minor
2023-10-11 16:24:00 +02:00
Hamy Ratoanina
49ca63ee0f
Fix sys_blockhash (#1285) 2023-10-11 10:23:09 -04:00
Linda Guiga
2aeecc3dd8
Fix failed receipt. (#1284) 2023-10-11 10:02:24 -04:00
Robin Salen
b4203c3d47
Make sure success is 0 in contract failure (#1283) 2023-10-10 06:23:20 -04:00
Alonso González
f49fbc8e9b
Transactions trie support (#1232)
* Implement transactions.

* Fix receipts and transactions

* Add some fixes

* Update tests

* Remove changes added for debugging purposes only

* Clippy

* Remove additional debug changes

* Remove unused

* Apply comments

---------

Co-authored-by: Linda Guiga <lindaguiga3@gmail.com>
Co-authored-by: Robin Salen <salenrobin@gmail.com>
2023-09-27 10:00:16 -04:00
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