diff --git a/prover/src/machine2/column.rs b/prover/src/machine2/column.rs index 432ff68a..4e9931ab 100644 --- a/prover/src/machine2/column.rs +++ b/prover/src/machine2/column.rs @@ -186,6 +186,9 @@ pub enum PreprocessedColumn { /// Timestamp for the third register access #[size = 4] Reg3TsCur, + /// Contains numbers from 0 to 127, and 0 afterwards. + #[size = 1] + Range128, /// Contains numbers from 0 to 255, and 0 afterwards. #[size = 1] Range256, diff --git a/prover/src/machine2/trace/mod.rs b/prover/src/machine2/trace/mod.rs index 593ab7f9..e35889bb 100644 --- a/prover/src/machine2/trace/mod.rs +++ b/prover/src/machine2/trace/mod.rs @@ -135,6 +135,7 @@ impl Traces { ret.fill_is_first32(); ret.fill_timestamps(); ret.fill_range256(); + ret.fill_range128(); ret.fill_range32(); ret.fill_bitwise(); ret @@ -361,6 +362,11 @@ impl Traces { self.cols[PreprocessedColumn::Range32.offset()][row_idx] = BaseField::from(row_idx); } } + fn fill_range128(&mut self) { + for row_idx in 0..128 { + self.cols[PreprocessedColumn::Range128.offset()][row_idx] = BaseField::from(row_idx); + } + } fn fill_timestamps(&mut self) { // Make sure the last reg3_ts_cur computation doesn't overflow debug_assert!(1 << self.log_size < (u32::MAX - 3) / 3);