openvm_ecc_circuit/
lib.rs

1#![cfg_attr(feature = "tco", allow(incomplete_features))]
2#![cfg_attr(feature = "tco", feature(explicit_tail_calls))]
3#![cfg_attr(feature = "tco", allow(internal_features))]
4#![cfg_attr(feature = "tco", feature(core_intrinsics))]
5#[cfg(feature = "cuda")]
6use {
7    openvm_mod_circuit_builder::FieldExpressionCoreRecordMut,
8    openvm_rv32_adapters::Rv32VecHeapAdapterRecord,
9};
10
11mod extension;
12mod weierstrass_chip;
13
14pub use extension::*;
15pub use weierstrass_chip::*;
16
17#[cfg(feature = "cuda")]
18pub(crate) type EccRecord<
19    'a,
20    const NUM_READS: usize,
21    const BLOCKS: usize,
22    const BLOCK_SIZE: usize,
23> = (
24    &'a mut Rv32VecHeapAdapterRecord<NUM_READS, BLOCKS, BLOCKS, BLOCK_SIZE, BLOCK_SIZE>,
25    FieldExpressionCoreRecordMut<'a>,
26);