mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-20 14:43:08 +00:00
* Implement syscalls for BYTE, SIGNEXTEND, SAR, SLT and SGT. * Implement SDIV and SMOD; minor documentation and tidying. * Implement EXP. * Add sys_byte to the syscall jumptable. * Test suite for signed syscalls. * Handle `EXIT_KERNEL` "properly". * Add gas charges; rename label. * Uppercase all opcodes. * Add test for BYTE; fix bug in BYTE. * Calculate and charge gas for calling `EXP`. * Fix gas calculation for `exponent = 0`. * Address Jacqui's comments. * Remove BYTE syscall as it will be implemented natively. * Oops, forgot to remove this bit.
27 lines
451 B
Rust
27 lines
451 B
Rust
mod account_code;
|
|
mod balance;
|
|
mod bignum;
|
|
mod bls381;
|
|
mod bn254;
|
|
mod core;
|
|
mod ecc;
|
|
mod exp;
|
|
mod hash;
|
|
mod mpt;
|
|
mod packing;
|
|
mod rlp;
|
|
mod signed_syscalls;
|
|
mod transaction_parsing;
|
|
|
|
use std::str::FromStr;
|
|
|
|
use anyhow::Result;
|
|
use ethereum_types::U256;
|
|
|
|
pub(crate) fn u256ify<'a>(hexes: impl IntoIterator<Item = &'a str>) -> Result<Vec<U256>> {
|
|
Ok(hexes
|
|
.into_iter()
|
|
.map(U256::from_str)
|
|
.collect::<Result<Vec<_>, _>>()?)
|
|
}
|