1 | #[macro_use ] |
2 | pub mod macros; |
3 | mod big; |
4 | mod env; |
5 | // Runtime feature detection requires atomics. |
6 | #[cfg (target_has_atomic = "ptr" )] |
7 | pub(crate) mod feature_detect; |
8 | mod float_traits; |
9 | pub mod hex_float; |
10 | mod int_traits; |
11 | |
12 | #[allow (unused_imports)] |
13 | pub use big::{i256, u256}; |
14 | #[allow (unused_imports)] |
15 | pub(crate) use cfg_if; |
16 | pub use env::{FpResult, Round, Status}; |
17 | #[allow (unused_imports)] |
18 | pub use float_traits::{DFloat, Float, HFloat, IntTy}; |
19 | pub(crate) use float_traits::{f32_from_bits, f64_from_bits}; |
20 | #[cfg (any(test, feature = "unstable-public-internals" ))] |
21 | pub use hex_float::Hexf; |
22 | #[cfg (f16_enabled)] |
23 | #[allow (unused_imports)] |
24 | pub use hex_float::hf16; |
25 | #[cfg (f128_enabled)] |
26 | #[allow (unused_imports)] |
27 | pub use hex_float::hf128; |
28 | #[allow (unused_imports)] |
29 | pub use hex_float::{hf32, hf64}; |
30 | pub use int_traits::{CastFrom, CastInto, DInt, HInt, Int, MinInt}; |
31 | |
32 | /// Hint to the compiler that the current path is cold. |
33 | pub fn cold_path() { |
34 | #[cfg (intrinsics_enabled)] |
35 | core::intrinsics::cold_path(); |
36 | } |
37 | |