diff --git a/Cargo.lock b/Cargo.lock index 38970c6..024fa09 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2229,6 +2229,7 @@ name = "ere-sp1" version = "0.1.0" dependencies = [ "bincode", + "indexmap 2.9.0", "sp1-sdk", "tempfile", "thiserror 2.0.12", diff --git a/crates/ere-sp1/Cargo.toml b/crates/ere-sp1/Cargo.toml index f6f27d9..1428490 100644 --- a/crates/ere-sp1/Cargo.toml +++ b/crates/ere-sp1/Cargo.toml @@ -13,6 +13,7 @@ tempfile = "3.3" bincode = "1.3" thiserror = "2" tracing = "0.1" +indexmap = { version = "2.9.0", features = ["serde"] } [lib] name = "ere_succinct" diff --git a/crates/ere-sp1/src/lib.rs b/crates/ere-sp1/src/lib.rs index debdecc..23088ef 100644 --- a/crates/ere-sp1/src/lib.rs +++ b/crates/ere-sp1/src/lib.rs @@ -51,9 +51,13 @@ impl zkVM for EreSP1 { .run() .map_err(|e| ExecuteError::Client(e.into()))?; - Ok(ProgramExecutionReport::new( - exec_report.total_instruction_count(), - )) + let total_num_cycles = exec_report.total_instruction_count(); + let region_cycles : indexmap::IndexMap<_, _>= exec_report.cycle_tracker.into_iter().collect(); + + let mut ere_report = ProgramExecutionReport::new(total_num_cycles); + ere_report.region_cycles = region_cycles; + + Ok(ere_report) } fn prove(