miri/concurrency/
mod.rs

1pub mod cpu_affinity;
2pub mod data_race;
3mod data_race_handler;
4pub mod init_once;
5mod range_object_map;
6pub mod sync;
7pub mod thread;
8mod vector_clock;
9pub mod weak_memory;
10
11// cfg(bootstrap)
12macro_rules! cfg_select_dispatch {
13    ($($tokens:tt)*) => {
14        #[cfg(bootstrap)]
15        cfg_match! { $($tokens)* }
16
17        #[cfg(not(bootstrap))]
18        cfg_select! { $($tokens)* }
19    };
20}
21
22// Import either the real genmc adapter or a dummy module.
23cfg_select_dispatch! {
24    feature = "genmc" => {
25        mod genmc;
26        pub use self::genmc::{GenmcCtx, GenmcConfig};
27    }
28    _ => {
29        #[path = "genmc/dummy.rs"]
30        mod genmc_dummy;
31        use self::genmc_dummy as genmc;
32        pub use self::genmc::{GenmcCtx, GenmcConfig};
33    }
34}
35
36pub use self::data_race_handler::{AllocDataRaceHandler, GlobalDataRaceHandler};
37pub use self::vector_clock::VClock;