From f4fdb6a12f358224b1ab3414704177ed50000ad2 Mon Sep 17 00:00:00 2001 From: Daniel Lubarov Date: Sat, 3 Dec 2022 12:02:51 -0800 Subject: [PATCH] Fix --- evm/src/cpu/bootstrap_kernel.rs | 2 ++ evm/src/cpu/cpu_stark.rs | 1 + 2 files changed, 3 insertions(+) diff --git a/evm/src/cpu/bootstrap_kernel.rs b/evm/src/cpu/bootstrap_kernel.rs index 8cbf3d43..ba45f738 100644 --- a/evm/src/cpu/bootstrap_kernel.rs +++ b/evm/src/cpu/bootstrap_kernel.rs @@ -24,6 +24,7 @@ pub(crate) fn generate_bootstrap_kernel(state: &mut GenerationState // Iterate through chunks of the code, such that we can write one chunk to memory per row. for chunk in &KERNEL.code.iter().enumerate().chunks(NUM_GP_CHANNELS) { let mut cpu_row = CpuColumnsView::default(); + cpu_row.clock = F::from_canonical_usize(state.traces.clock()); cpu_row.is_bootstrap_kernel = F::ONE; // Write this chunk to memory, while simultaneously packing its bytes into a u32 word. @@ -38,6 +39,7 @@ pub(crate) fn generate_bootstrap_kernel(state: &mut GenerationState } let mut final_cpu_row = CpuColumnsView::default(); + final_cpu_row.clock = F::from_canonical_usize(state.traces.clock()); final_cpu_row.is_bootstrap_kernel = F::ONE; final_cpu_row.is_keccak_sponge = F::ONE; // The Keccak sponge CTL uses memory value columns for its inputs and outputs. diff --git a/evm/src/cpu/cpu_stark.rs b/evm/src/cpu/cpu_stark.rs index 2bddbca5..f0c85638 100644 --- a/evm/src/cpu/cpu_stark.rs +++ b/evm/src/cpu/cpu_stark.rs @@ -116,6 +116,7 @@ pub struct CpuStark { } impl CpuStark { + // TODO: Remove? pub fn generate(&self, local_values: &mut [F; NUM_CPU_COLUMNS]) { let local_values: &mut CpuColumnsView<_> = local_values.borrow_mut(); decode::generate(local_values);