mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-25 00:53:25 +00:00
* Use static `KERNEL` in tests * Print opcode count * Update criterion * Combine all syscalls into one flag (#802) * Combine all syscalls into one flag * Minor: typo * Daniel PR comments * Check that `le_sum` won't overflow * security notes * Test reverse_index_bits Thanks to Least Authority for this * clippy * EVM shift left/right operations (#801) * First parts of shift implementation. * Disable range check errors. * Tidy up ASM. * Update comments; fix some .sum() expressions. * First full draft of shift left/right. * Missed a +1. * Clippy. * Address Jacqui's comments. * Add comment. * Fix missing filter. * Address second round of comments from Jacqui. * Remove signed operation placeholders from arithmetic table. (#812) Co-authored-by: wborgeaud <williamborgeaud@gmail.com> Co-authored-by: Daniel Lubarov <daniel@lubarov.com> Co-authored-by: Jacqueline Nabaglo <jakub@mirprotocol.org> Co-authored-by: Hamish Ivey-Law <426294+unzvfu@users.noreply.github.com>
27 lines
1021 B
NASM
27 lines
1021 B
NASM
global main:
|
|
// First, initialise the shift table
|
|
%shift_table_init
|
|
// Second, load all MPT data from the prover.
|
|
PUSH txn_loop
|
|
%jump(load_all_mpts)
|
|
|
|
hash_initial_tries:
|
|
%mpt_hash_state_trie %mstore_global_metadata(@GLOBAL_METADATA_STATE_TRIE_DIGEST_BEFORE)
|
|
%mpt_hash_txn_trie %mstore_global_metadata(@GLOBAL_METADATA_TXN_TRIE_DIGEST_BEFORE)
|
|
%mpt_hash_receipt_trie %mstore_global_metadata(@GLOBAL_METADATA_RECEIPT_TRIE_DIGEST_BEFORE)
|
|
|
|
txn_loop:
|
|
// If the prover has no more txns for us to process, halt.
|
|
PROVER_INPUT(end_of_txns)
|
|
%jumpi(hash_final_tries)
|
|
|
|
// Call route_txn. When we return, continue the txn loop.
|
|
PUSH txn_loop
|
|
%jump(route_txn)
|
|
|
|
hash_final_tries:
|
|
%mpt_hash_state_trie %mstore_global_metadata(@GLOBAL_METADATA_STATE_TRIE_DIGEST_AFTER)
|
|
%mpt_hash_txn_trie %mstore_global_metadata(@GLOBAL_METADATA_TXN_TRIE_DIGEST_AFTER)
|
|
%mpt_hash_receipt_trie %mstore_global_metadata(@GLOBAL_METADATA_RECEIPT_TRIE_DIGEST_AFTER)
|
|
%jump(halt)
|