fastmaths 0.1.0

High-performance no_std math routines targeting glibc parity and strict f64 accuracy.
Documentation
[package]
name = "fastmaths"
version = "0.1.0"
edition = "2024"
rust-version = "1.86"
description = "High-performance no_std math routines targeting glibc parity and strict f64 accuracy."
readme = "README.md"
license = "MIT"
repository = "https://github.com/whb07/fastmaths"
homepage = "https://github.com/whb07/fastmaths"
documentation = "https://docs.rs/fastmaths"
keywords = ["math", "libm", "no-std", "f64", "numerics"]
categories = ["mathematics", "algorithms", "no-std"]
exclude = ["proptest-runs/**", "runner.log", "glibc/**", "target/**"]

[dependencies]
rug = { version = "1.24", optional = true, default-features = true }

[features]
mpfr = ["rug"]
soft-fma = []

[dev-dependencies]
criterion = "0.5"
libloading = "0.8"
proptest = "1.6"

[[bench]]
name = "bench_exp"
harness = false

[[bench]]
name = "bench_exp2"
harness = false

[[bench]]
name = "bench_expm1"
harness = false

[[bench]]
name = "bench_ln"
harness = false

[[bench]]
name = "bench_log2"
harness = false

[[bench]]
name = "bench_log10"
harness = false

[[bench]]
name = "bench_log1p"
harness = false

[[bench]]
name = "bench_logb"
harness = false

[[bench]]
name = "bench_ilogb"
harness = false

[[bench]]
name = "bench_sin"
harness = false

[[bench]]
name = "bench_cos"
harness = false

[[bench]]
name = "bench_tan"
harness = false

[[bench]]
name = "bench_asin"
harness = false

[[bench]]
name = "bench_acos"
harness = false

[[bench]]
name = "bench_atan"
harness = false

[[bench]]
name = "bench_atan2"
harness = false

[[bench]]
name = "bench_asinh"
harness = false

[[bench]]
name = "bench_acosh"
harness = false

[[bench]]
name = "bench_atanh"
harness = false

[[bench]]
name = "bench_erf"
harness = false

[[bench]]
name = "bench_erfc"
harness = false

[[bench]]
name = "bench_exp10"
harness = false

[[bench]]
name = "bench_sinh"
harness = false

[[bench]]
name = "bench_cosh"
harness = false

[[bench]]
name = "bench_tanh"
harness = false

[[bench]]
name = "bench_hypot"
harness = false

[[bench]]
name = "bench_fmod"
harness = false

[[bench]]
name = "bench_nextafter"
harness = false

[[bench]]
name = "bench_fdim"
harness = false

[[bench]]
name = "bench_fmax"
harness = false

[[bench]]
name = "bench_fmin"
harness = false

[[bench]]
name = "bench_modf"
harness = false

[[bench]]
name = "bench_remainder"
harness = false

[[bench]]
name = "bench_pow"
harness = false

[[bench]]
name = "bench_sqrt"
harness = false

[[bench]]
name = "bench_cbrt"
harness = false

[[bench]]
name = "bench_floor"
harness = false

[[bench]]
name = "bench_ceil"
harness = false

[[bench]]
name = "bench_trunc"
harness = false

[[bench]]
name = "bench_round"
harness = false

[[bench]]
name = "bench_rint"
harness = false

[[bench]]
name = "bench_nearbyint"
harness = false

[[bench]]
name = "bench_lrint"
harness = false

[[bench]]
name = "bench_llrint"
harness = false

[[bench]]
name = "bench_lround"
harness = false

[[bench]]
name = "bench_llround"
harness = false

[[bench]]
name = "bench_copysign"
harness = false

[[bench]]
name = "bench_fabs"
harness = false

[[bench]]
name = "bench_fma"
harness = false

[[bench]]
name = "bench_frexp"
harness = false

[[bench]]
name = "bench_ldexp"
harness = false

[[bench]]
name = "bench_scalbn"
harness = false

[[bench]]
name = "bench_scalbln"
harness = false

[[bench]]
name = "bench_remquo"
harness = false

[[bench]]
name = "bench_lgamma"
harness = false

[[bench]]
name = "bench_tgamma"
harness = false

[profile.bench]
codegen-units = 1
lto = true
opt-level = 3