openvm_rv32im_circuit/mul/
mod.rs

1use openvm_circuit::arch::{VmAirWrapper, VmChipWrapper};
2
3use super::adapters::{RV32_CELL_BITS, RV32_REGISTER_NUM_LIMBS};
4use crate::adapters::{Rv32MultAdapterAir, Rv32MultAdapterExecutor, Rv32MultAdapterFiller};
5
6mod core;
7mod execution;
8pub use core::*;
9
10#[cfg(feature = "cuda")]
11mod cuda;
12#[cfg(feature = "cuda")]
13pub use cuda::*;
14
15#[cfg(test)]
16mod tests;
17
18pub type Rv32MultiplicationAir = VmAirWrapper<
19    Rv32MultAdapterAir,
20    MultiplicationCoreAir<RV32_REGISTER_NUM_LIMBS, RV32_CELL_BITS>,
21>;
22pub type Rv32MultiplicationExecutor =
23    MultiplicationExecutor<Rv32MultAdapterExecutor, RV32_REGISTER_NUM_LIMBS, RV32_CELL_BITS>;
24pub type Rv32MultiplicationChip<F> = VmChipWrapper<
25    F,
26    MultiplicationFiller<Rv32MultAdapterFiller, RV32_REGISTER_NUM_LIMBS, RV32_CELL_BITS>,
27>;