p3_baby_bear/
lib.rs

1#![no_std]
2
3#[cfg(test)]
4extern crate alloc;
5
6mod baby_bear;
7#[cfg(test)]
8mod extension_test;
9mod mds;
10mod poseidon2;
11
12pub use baby_bear::*;
13pub use mds::*;
14pub use poseidon2::*;
15
16#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
17mod aarch64_neon;
18#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
19pub use aarch64_neon::*;
20
21#[cfg(all(
22    target_arch = "x86_64",
23    target_feature = "avx2",
24    not(target_feature = "avx512f")
25))]
26mod x86_64_avx2;
27#[cfg(all(
28    target_arch = "x86_64",
29    target_feature = "avx2",
30    not(target_feature = "avx512f")
31))]
32pub use x86_64_avx2::*;
33
34#[cfg(all(target_arch = "x86_64", target_feature = "avx512f"))]
35mod x86_64_avx512;
36#[cfg(all(target_arch = "x86_64", target_feature = "avx512f"))]
37pub use x86_64_avx512::*;