openvm_circuit/system/program/
mod.rs1use openvm_instructions::instruction::Instruction;
2use openvm_stark_backend::{
3 config::StarkGenericConfig,
4 prover::{cpu::CpuBackend, types::CommittedTraceData},
5};
6
7#[cfg(test)]
8pub mod tests;
9
10mod air;
11mod bus;
12pub mod trace;
13
14pub use air::*;
15pub use bus::*;
16
17const EXIT_CODE_FAIL: usize = 1;
18
19pub struct ProgramChip<SC: StarkGenericConfig> {
21 pub(super) filtered_exec_frequencies: Vec<u32>,
24 pub(super) cached: Option<CommittedTraceData<CpuBackend<SC>>>,
25}
26
27impl<SC: StarkGenericConfig> ProgramChip<SC> {
28 pub(super) fn unloaded() -> Self {
29 Self {
30 filtered_exec_frequencies: Vec::new(),
31 cached: None,
32 }
33 }
34}