From 64cc1000e7dbe83d88ca9fa6811d41adfa7796c5 Mon Sep 17 00:00:00 2001 From: Hamy Ratoanina Date: Tue, 28 Nov 2023 14:14:47 -0500 Subject: [PATCH] Move stack_len_bounds_aux to general columns (#1360) * Move stack_len_bounds_aux to general columns * Update specs * Apply comments * Apply comment --- evm/spec/cpulogic.tex | 4 ++ evm/spec/tables/cpu.tex | 6 +- evm/spec/zkevm.pdf | Bin 300402 -> 303122 bytes evm/src/cpu/columns/general.rs | 14 ++-- evm/src/cpu/columns/mod.rs | 4 -- evm/src/cpu/cpu_stark.rs | 5 +- evm/src/cpu/kernel/interpreter.rs | 2 +- evm/src/cpu/mod.rs | 1 - evm/src/cpu/stack.rs | 67 +++++++++++++++++++- evm/src/cpu/stack_bounds.rs | 63 ------------------ evm/src/witness/operation.rs | 37 +---------- evm/src/witness/state.rs | 4 ++ evm/src/witness/transition.rs | 102 ++++++++++++++++++++++-------- evm/src/witness/util.rs | 2 +- 14 files changed, 165 insertions(+), 146 deletions(-) delete mode 100644 evm/src/cpu/stack_bounds.rs diff --git a/evm/spec/cpulogic.tex b/evm/spec/cpulogic.tex index ce0f1a4e..29c83a87 100644 --- a/evm/spec/cpulogic.tex +++ b/evm/spec/cpulogic.tex @@ -114,6 +114,7 @@ ecAdd, ecMul and ecPairing precompiles. \subsection{Stack handling} +\label{stackhandling} \subsubsection{Top of the stack} @@ -188,6 +189,9 @@ Then overflow can be checked with the flag $$\texttt{(1 - is\_kernel\_mode) - stack\_len * stack\_len\_bounds\_aux}.$$ The flag is 1 if \texttt{stack\_len = 1025} and we're in user mode, and 0 otherwise. +Because \texttt{stack\_len\_bounds\_aux} is a shared general column, we only check this constraint after an instruction that can actually trigger an overflow, +i.e. a pushing, non-popping instruction. + \subsection{Gas handling} \subsubsection{Out of gas errors} diff --git a/evm/spec/tables/cpu.tex b/evm/spec/tables/cpu.tex index b734d7dc..3ac4a079 100644 --- a/evm/spec/tables/cpu.tex +++ b/evm/spec/tables/cpu.tex @@ -31,7 +31,6 @@ but change the code context, which is where the instructions are read from. \item \texttt{code\_context}: Indicates in which context the code to execute resides. It's equal to \texttt{context} in user mode, but is always 0 in kernel mode. \item \texttt{program\_counter}: The address of the instruction to be read and executed. \item \texttt{stack\_len}: The current length of the stack. - \item \texttt{stack\_len\_bounds\_aux}: Helper column used to check that the stack doesn't overflow in user mode. \item \texttt{is\_kernel\_mode}: Boolean indicating whether we are in kernel (i.e. privileged) mode. This means we are executing kernel code, and we have access to privileged instructions. \item \texttt{gas}: The current amount of gas used in the current context. It is eventually checked to be below the current gas limit. Must fit in 32 bits. @@ -73,6 +72,7 @@ To check if this is not the case, we must check that at least one of the seven h of the sum of the seven high limbs, and is used to check it's non-zero like the previous cases. Contrary to the logic operations, we do not need to check limbs individually: each limb has been range-checked to 32 bits, meaning that it's not possible for the sum to overflow and be zero if some of the limbs are non-zero. - \item \texttt{Stack}: The last three columns are used by popping-only (resp. pushing-only) instructions to check if the stack is empty after (resp. was empty -before) the instruction. We use the last columns to prevent conflicts with the other general columns. More details are provided in the stack handling section. + \item \texttt{Stack}: \texttt{stack\_inv}, \texttt{stack\_inv\_aux} and \texttt{stack\_inv\_aux\_2} are used by popping-only (resp. pushing-only) instructions to check if the stack is empty after (resp. was empty +before) the instruction. \texttt{stack\_len\_bounds\_ aux} is used to check that the stack doesn't overflow in user mode. We use the last four columns to prevent conflicts with the other general columns. +See \ref{stackhandling} for more details. \end{itemize} diff --git a/evm/spec/zkevm.pdf b/evm/spec/zkevm.pdf index ccd58a282745ffa50dd035347ccb8b63c6592174..d0190e91b65481868e535434a2cd93d476105cf0 100644 GIT binary patch delta 109517 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%0DO`b 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 Wjzo^d!^y=Z$b(K#FRLbp{{H~W2RA+d delta 107335 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 z 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 z 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
SIwo<-&8uZo6s8D{WrhblSww+!%jo_i%$q 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

abBZ0ZD`Y*) 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%0D(bHX8C0d4eHk_Mc9ziI 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 RfS-ql1C5?uMpYK={{VXtfJguU diff --git a/evm/src/cpu/columns/general.rs b/evm/src/cpu/columns/general.rs index 234a5927..1d631243 100644 --- a/evm/src/cpu/columns/general.rs +++ b/evm/src/cpu/columns/general.rs @@ -135,18 +135,20 @@ pub(crate) struct CpuShiftView { pub(crate) high_limb_sum_inv: T, } -/// View of the last three `CpuGeneralColumns` storing the stack length pseudoinverse `stack_inv`, -/// stack_len * stack_inv and filter * stack_inv_aux when needed. +/// View of the last four `CpuGeneralColumns` storing stack-related variables. The first three are used +/// for conditionally enabling and disabling channels when reading the next `stack_top`, and the fourth one +/// is used to check for stack overflow. #[derive(Copy, Clone)] pub(crate) struct CpuStackView { - // Used for conditionally enabling and disabling channels when reading the next `stack_top`. - _unused: [T; 5], - /// Pseudoinverse of the stack len. + _unused: [T; 4], + /// Pseudoinverse of `stack_len - num_pops`. pub(crate) stack_inv: T, /// stack_inv * stack_len. pub(crate) stack_inv_aux: T, - /// Holds filter * stack_inv_aux when necessary, to reduce the degree of stack constraints. + /// Used to reduce the degree of stack constraints when needed. pub(crate) stack_inv_aux_2: T, + /// Pseudoinverse of `nv.stack_len - (MAX_USER_STACK_SIZE + 1)` to check for stack overflow. + pub(crate) stack_len_bounds_aux: T, } /// Number of columns shared by all the views of `CpuGeneralColumnsView`. diff --git a/evm/src/cpu/columns/mod.rs b/evm/src/cpu/columns/mod.rs index 4a03f61d..e8b8f1c3 100644 --- a/evm/src/cpu/columns/mod.rs +++ b/evm/src/cpu/columns/mod.rs @@ -68,10 +68,6 @@ pub(crate) struct CpuColumnsView { /// If CPU cycle: The stack length. pub stack_len: T, - /// If CPU cycle: A prover-provided value needed to show that the instruction does not cause the - /// stack to underflow or overflow. - pub stack_len_bounds_aux: T, - /// If CPU cycle: We're in kernel (privileged) mode. pub is_kernel_mode: T, diff --git a/evm/src/cpu/cpu_stark.rs b/evm/src/cpu/cpu_stark.rs index 893509dc..85acdabb 100644 --- a/evm/src/cpu/cpu_stark.rs +++ b/evm/src/cpu/cpu_stark.rs @@ -17,8 +17,7 @@ use crate::constraint_consumer::{ConstraintConsumer, RecursiveConstraintConsumer use crate::cpu::columns::{COL_MAP, NUM_CPU_COLUMNS}; use crate::cpu::{ bootstrap_kernel, byte_unpacking, clock, contextops, control_flow, decode, dup_swap, gas, - jumps, membus, memio, modfp254, pc, push0, shift, simple_logic, stack, stack_bounds, - syscalls_exceptions, + jumps, membus, memio, modfp254, pc, push0, shift, simple_logic, stack, syscalls_exceptions, }; use crate::cross_table_lookup::{Column, TableWithColumns}; use crate::evaluation_frame::{StarkEvaluationFrame, StarkFrame}; @@ -314,7 +313,6 @@ impl, const D: usize> Stark for CpuStark, const D: usize> Stark for CpuStark = OpsColumnsView { + binary_op: false, + ternary_op: false, + fp254_op: false, + eq_iszero: false, + logic_op: false, + not_pop: false, + shift: false, + jumpdest_keccak_general: false, + prover_input: false, + jumps: false, + pc_push0: true, + push: true, + dup_swap: true, + context_op: false, + mload_32bytes: false, + mstore_32bytes: false, + exit_kernel: true, // Doesn't directly push, but the syscall it's returning from might. + m_op_general: false, + syscall: false, + exception: false, +}; + /// Structure to represent opcodes stack behaviours: /// - number of pops /// - whether the opcode(s) push @@ -270,10 +299,22 @@ pub(crate) fn eval_packed( nv: &CpuColumnsView

, yield_constr: &mut ConstraintConsumer

, ) { - for (op, stack_behavior) in izip!(lv.op.into_iter(), STACK_BEHAVIORS.into_iter()) { + for (op, stack_behavior, might_overflow) in izip!( + lv.op.into_iter(), + STACK_BEHAVIORS.into_iter(), + MIGHT_OVERFLOW.into_iter() + ) { if let Some(stack_behavior) = stack_behavior { eval_packed_one(lv, nv, op, stack_behavior, yield_constr); } + + if might_overflow { + // Check for stack overflow in the next row. + let diff = nv.stack_len - P::Scalar::from_canonical_usize(MAX_USER_STACK_SIZE + 1); + let lhs = diff * lv.general.stack().stack_len_bounds_aux; + let rhs = P::ONES - nv.is_kernel_mode; + yield_constr.constraint_transition(op * (lhs - rhs)); + } } // Constrain stack for JUMPDEST. @@ -549,7 +590,7 @@ pub(crate) fn eval_ext_circuit_one, const D: usize> yield_constr.constraint_transition(builder, constr); } -/// Circuti version of `eval_packed`. +/// Circuit version of `eval_packed`. /// Evaluates constraints for all opcodes' `StackBehavior`s. pub(crate) fn eval_ext_circuit, const D: usize>( builder: &mut plonky2::plonk::circuit_builder::CircuitBuilder, @@ -557,10 +598,30 @@ pub(crate) fn eval_ext_circuit, const D: usize>( nv: &CpuColumnsView>, yield_constr: &mut RecursiveConstraintConsumer, ) { - for (op, stack_behavior) in izip!(lv.op.into_iter(), STACK_BEHAVIORS.into_iter()) { + for (op, stack_behavior, might_overflow) in izip!( + lv.op.into_iter(), + STACK_BEHAVIORS.into_iter(), + MIGHT_OVERFLOW.into_iter() + ) { if let Some(stack_behavior) = stack_behavior { eval_ext_circuit_one(builder, lv, nv, op, stack_behavior, yield_constr); } + + if might_overflow { + // Check for stack overflow in the next row. + let diff = builder.add_const_extension( + nv.stack_len, + -F::from_canonical_usize(MAX_USER_STACK_SIZE + 1), + ); + let prod = builder.mul_add_extension( + diff, + lv.general.stack().stack_len_bounds_aux, + nv.is_kernel_mode, + ); + let rhs = builder.add_const_extension(prod, -F::ONE); + let constr = builder.mul_extension(op, rhs); + yield_constr.constraint_transition(builder, constr); + } } // Constrain stack for JUMPDEST. diff --git a/evm/src/cpu/stack_bounds.rs b/evm/src/cpu/stack_bounds.rs deleted file mode 100644 index 59d6ff9a..00000000 --- a/evm/src/cpu/stack_bounds.rs +++ /dev/null @@ -1,63 +0,0 @@ -//! Checks for stack overflow. -//! -//! The constraints defined herein validate that stack overflow did not occur. For example, if `dup` -//! is set but the copy would overflow, these constraints would make the proof unverifiable. -//! -//! Faults are handled under a separate operation flag, `exception` , which traps to the kernel. The -//! kernel then handles the exception. However, before it may do so, it must verify in software that -//! an exception did in fact occur (i.e. the trap was warranted) and `PANIC` otherwise; this -//! prevents the prover from faking an exception on a valid operation. - -use plonky2::field::extension::Extendable; -use plonky2::field::packed::PackedField; -use plonky2::field::types::Field; -use plonky2::hash::hash_types::RichField; -use plonky2::iop::ext_target::ExtensionTarget; - -use super::columns::COL_MAP; -use crate::constraint_consumer::{ConstraintConsumer, RecursiveConstraintConsumer}; -use crate::cpu::columns::CpuColumnsView; - -pub(crate) const MAX_USER_STACK_SIZE: usize = 1024; - -/// Evaluates constraints to check for stack overflows. -pub(crate) fn eval_packed( - lv: &CpuColumnsView

, - yield_constr: &mut ConstraintConsumer

, -) { - // If we're in user mode, ensure that the stack length is not 1025. Note that a stack length of - // 1024 is valid. 1025 means we've gone one over, which is necessary for overflow, as an EVM - // opcode increases the stack length by at most one. - - let filter: P = COL_MAP.op.iter().map(|&col_i| lv[col_i]).sum(); - let diff = lv.stack_len - P::Scalar::from_canonical_usize(MAX_USER_STACK_SIZE + 1); - let lhs = diff * lv.stack_len_bounds_aux; - let rhs = P::ONES - lv.is_kernel_mode; - - yield_constr.constraint(filter * (lhs - rhs)); -} - -/// Circuit version of `eval_packed`. -/// Evaluates constraints to check for stack overflows. -pub(crate) fn eval_ext_circuit, const D: usize>( - builder: &mut plonky2::plonk::circuit_builder::CircuitBuilder, - lv: &CpuColumnsView>, - yield_constr: &mut RecursiveConstraintConsumer, -) { - // If we're in user mode, ensure that the stack length is not 1025. Note that a stack length of - // 1024 is valid. 1025 means we've gone one over, which is necessary for overflow, as an EVM - // opcode increases the stack length by at most one. - - let filter = builder.add_many_extension(COL_MAP.op.iter().map(|&col_i| lv[col_i])); - - let lhs = builder.arithmetic_extension( - F::ONE, - -F::from_canonical_usize(MAX_USER_STACK_SIZE + 1), - lv.stack_len, - lv.stack_len_bounds_aux, - lv.stack_len_bounds_aux, - ); - let constr = builder.add_extension(lhs, lv.is_kernel_mode); - let constr = builder.mul_sub_extension(filter, constr, filter); - yield_constr.constraint(builder, constr); -} diff --git a/evm/src/witness/operation.rs b/evm/src/witness/operation.rs index fddafa81..3d092101 100644 --- a/evm/src/witness/operation.rs +++ b/evm/src/witness/operation.rs @@ -14,7 +14,7 @@ use crate::cpu::kernel::assembler::BYTES_PER_OFFSET; use crate::cpu::kernel::constants::context_metadata::ContextMetadata; use crate::cpu::membus::NUM_GP_CHANNELS; use crate::cpu::simple_logic::eq_iszero::generate_pinv_diff; -use crate::cpu::stack_bounds::MAX_USER_STACK_SIZE; +use crate::cpu::stack::MAX_USER_STACK_SIZE; use crate::extension_tower::BN_BASE; use crate::generation::state::GenerationState; use crate::memory::segments::Segment; @@ -24,6 +24,7 @@ use crate::witness::errors::ProgramError; use crate::witness::errors::ProgramError::MemoryError; use crate::witness::memory::{MemoryAddress, MemoryChannel, MemoryOp, MemoryOpKind}; use crate::witness::operation::MemoryChannel::GeneralPurpose; +use crate::witness::transition::fill_stack_fields; use crate::witness::util::{ keccak_sponge_log, mem_read_gp_with_log_and_fill, mem_write_gp_log_and_fill, stack_pop_with_log_and_fill, @@ -950,44 +951,12 @@ pub(crate) fn generate_exception( row.op.exception = F::ONE; - let disallowed_len = F::from_canonical_usize(MAX_USER_STACK_SIZE + 1); - let diff = row.stack_len - disallowed_len; - if let Some(inv) = diff.try_inverse() { - row.stack_len_bounds_aux = inv; - } else { - // This is a stack overflow that should have been caught earlier. - return Err(ProgramError::InterpreterError); - } - if let Some(inv) = row.stack_len.try_inverse() { row.general.stack_mut().stack_inv = inv; row.general.stack_mut().stack_inv_aux = F::ONE; } - if state.registers.is_stack_top_read { - let channel = &mut row.mem_channels[0]; - channel.used = F::ONE; - channel.is_read = F::ONE; - channel.addr_context = F::from_canonical_usize(state.registers.context); - channel.addr_segment = F::from_canonical_usize(Segment::Stack as usize); - channel.addr_virtual = F::from_canonical_usize(state.registers.stack_len - 1); - - let address = MemoryAddress { - context: state.registers.context, - segment: Segment::Stack as usize, - virt: state.registers.stack_len - 1, - }; - - let mem_op = MemoryOp::new( - GeneralPurpose(0), - state.traces.clock(), - address, - MemoryOpKind::Read, - state.registers.stack_top, - ); - state.traces.push_memory(mem_op); - state.registers.is_stack_top_read = false; - } + fill_stack_fields(state, &mut row); row.general.exception_mut().exc_code_bits = [ F::from_bool(exc_code & 1 != 0), diff --git a/evm/src/witness/state.rs b/evm/src/witness/state.rs index 406ae856..392109b3 100644 --- a/evm/src/witness/state.rs +++ b/evm/src/witness/state.rs @@ -12,6 +12,9 @@ pub struct RegistersState { pub stack_top: U256, // Indicates if you read the new stack_top from memory to set the channel accordingly. pub is_stack_top_read: bool, + // Indicates if the previous operation might have caused an overflow, and we must check + // if it's the case. + pub check_overflow: bool, pub context: usize, pub gas_used: u64, } @@ -34,6 +37,7 @@ impl Default for RegistersState { stack_len: 0, stack_top: U256::zero(), is_stack_top_read: false, + check_overflow: false, context: 0, gas_used: 0, } diff --git a/evm/src/witness/transition.rs b/evm/src/witness/transition.rs index cd381b1f..7e716fb7 100644 --- a/evm/src/witness/transition.rs +++ b/evm/src/witness/transition.rs @@ -8,9 +8,9 @@ use crate::cpu::columns::CpuColumnsView; use crate::cpu::kernel::aggregator::KERNEL; use crate::cpu::kernel::constants::context_metadata::ContextMetadata; use crate::cpu::stack::{ - EQ_STACK_BEHAVIOR, IS_ZERO_STACK_BEHAVIOR, JUMPI_OP, JUMP_OP, STACK_BEHAVIORS, + EQ_STACK_BEHAVIOR, IS_ZERO_STACK_BEHAVIOR, JUMPI_OP, JUMP_OP, MAX_USER_STACK_SIZE, + MIGHT_OVERFLOW, STACK_BEHAVIORS, }; -use crate::cpu::stack_bounds::MAX_USER_STACK_SIZE; use crate::generation::state::GenerationState; use crate::memory::segments::Segment; use crate::witness::errors::ProgramError; @@ -227,11 +227,42 @@ fn get_op_special_length(op: Operation) -> Option { } } +// These operations might trigger a stack overflow, typically those pushing without popping. +// Kernel-only pushing instructions aren't considered; they can't overflow. +fn might_overflow_op(op: Operation) -> bool { + match op { + Operation::Push(1..) => MIGHT_OVERFLOW.push, + Operation::Dup(_) | Operation::Swap(_) => MIGHT_OVERFLOW.dup_swap, + Operation::Iszero | Operation::Eq => MIGHT_OVERFLOW.eq_iszero, + Operation::Not | Operation::Pop => MIGHT_OVERFLOW.not_pop, + Operation::Syscall(_, _, _) => MIGHT_OVERFLOW.syscall, + Operation::BinaryLogic(_) => MIGHT_OVERFLOW.logic_op, + Operation::BinaryArithmetic(arithmetic::BinaryOperator::AddFp254) + | Operation::BinaryArithmetic(arithmetic::BinaryOperator::MulFp254) + | Operation::BinaryArithmetic(arithmetic::BinaryOperator::SubFp254) => { + MIGHT_OVERFLOW.fp254_op + } + Operation::BinaryArithmetic(arithmetic::BinaryOperator::Shl) + | Operation::BinaryArithmetic(arithmetic::BinaryOperator::Shr) => MIGHT_OVERFLOW.shift, + Operation::BinaryArithmetic(_) => MIGHT_OVERFLOW.binary_op, + Operation::TernaryArithmetic(_) => MIGHT_OVERFLOW.ternary_op, + Operation::KeccakGeneral | Operation::Jumpdest => MIGHT_OVERFLOW.jumpdest_keccak_general, + Operation::ProverInput => MIGHT_OVERFLOW.prover_input, + Operation::Jump | Operation::Jumpi => MIGHT_OVERFLOW.jumps, + Operation::Pc | Operation::Push(0) => MIGHT_OVERFLOW.pc_push0, + Operation::GetContext | Operation::SetContext => MIGHT_OVERFLOW.context_op, + Operation::Mload32Bytes => MIGHT_OVERFLOW.mload_32bytes, + Operation::Mstore32Bytes(_) => MIGHT_OVERFLOW.mstore_32bytes, + Operation::ExitKernel => MIGHT_OVERFLOW.exit_kernel, + Operation::MloadGeneral | Operation::MstoreGeneral => MIGHT_OVERFLOW.m_op_general, + } +} + fn perform_op( state: &mut GenerationState, op: Operation, row: CpuColumnsView, -) -> Result<(), ProgramError> { +) -> Result { match op { Operation::Push(n) => generate_push(n, state, row)?, Operation::Dup(n) => generate_dup(n, state, row)?, @@ -291,7 +322,7 @@ fn perform_op( } } - Ok(()) + Ok(op) } /// Row that has the correct values for system registers and the code channel, but is otherwise @@ -311,18 +342,10 @@ fn base_row(state: &mut GenerationState) -> (CpuColumnsView, u8) (row, opcode) } -fn try_perform_instruction(state: &mut GenerationState) -> Result<(), ProgramError> { - let (mut row, opcode) = base_row(state); - let op = decode(state.registers, opcode)?; - - if state.registers.is_kernel { - log_kernel_instruction(state, op); - } else { - log::debug!("User instruction: {:?}", op); - } - - fill_op_flag(op, &mut row); - +pub(crate) fn fill_stack_fields( + state: &mut GenerationState, + row: &mut CpuColumnsView, +) -> Result<(), ProgramError> { if state.registers.is_stack_top_read { let channel = &mut row.mem_channels[0]; channel.used = F::ONE; @@ -348,19 +371,43 @@ fn try_perform_instruction(state: &mut GenerationState) -> Result<( state.registers.is_stack_top_read = false; } - if state.registers.is_kernel { - row.stack_len_bounds_aux = F::ZERO; - } else { - let disallowed_len = F::from_canonical_usize(MAX_USER_STACK_SIZE + 1); - let diff = row.stack_len - disallowed_len; - if let Some(inv) = diff.try_inverse() { - row.stack_len_bounds_aux = inv; + if state.registers.check_overflow { + if state.registers.is_kernel { + row.general.stack_mut().stack_len_bounds_aux = F::ZERO; } else { - // This is a stack overflow that should have been caught earlier. - return Err(ProgramError::InterpreterError); + let clock = state.traces.clock(); + let last_row = &mut state.traces.cpu[clock - 1]; + let disallowed_len = F::from_canonical_usize(MAX_USER_STACK_SIZE + 1); + let diff = row.stack_len - disallowed_len; + if let Some(inv) = diff.try_inverse() { + last_row.general.stack_mut().stack_len_bounds_aux = inv; + } else { + // This is a stack overflow that should have been caught earlier. + return Err(ProgramError::InterpreterError); + } } + state.registers.check_overflow = false; } + Ok(()) +} + +fn try_perform_instruction( + state: &mut GenerationState, +) -> Result { + let (mut row, opcode) = base_row(state); + let op = decode(state.registers, opcode)?; + + if state.registers.is_kernel { + log_kernel_instruction(state, op); + } else { + log::debug!("User instruction: {:?}", op); + } + + fill_op_flag(op, &mut row); + + fill_stack_fields(state, &mut row); + // Might write in general CPU columns when it shouldn't, but the correct values will // overwrite these ones during the op generation. if let Some(special_len) = get_op_special_length(op) { @@ -436,10 +483,13 @@ pub(crate) fn transition(state: &mut GenerationState) -> anyhow::Re let result = try_perform_instruction(state); match result { - Ok(()) => { + Ok(op) => { state .memory .apply_ops(state.traces.mem_ops_since(checkpoint.traces)); + if might_overflow_op(op) { + state.registers.check_overflow = true; + } Ok(()) } Err(e) => { diff --git a/evm/src/witness/util.rs b/evm/src/witness/util.rs index 0e91590c..5f398093 100644 --- a/evm/src/witness/util.rs +++ b/evm/src/witness/util.rs @@ -6,7 +6,7 @@ use crate::byte_packing::byte_packing_stark::BytePackingOp; use crate::cpu::columns::CpuColumnsView; use crate::cpu::kernel::keccak_util::keccakf_u8s; use crate::cpu::membus::NUM_CHANNELS; -use crate::cpu::stack_bounds::MAX_USER_STACK_SIZE; +use crate::cpu::stack::MAX_USER_STACK_SIZE; use crate::generation::state::GenerationState; use crate::keccak_sponge::columns::{KECCAK_RATE_BYTES, KECCAK_WIDTH_BYTES}; use crate::keccak_sponge::keccak_sponge_stark::KeccakSpongeOp;