16 releases

0.2.11 Oct 28, 2024
0.2.8 Oct 6, 2023
0.2.7 May 15, 2023
0.2.6 Nov 9, 2022
0.1.2 Jul 18, 2018

#3 in No standard library

Download history 1177454/week @ 2024-07-19 1210360/week @ 2024-07-26 1180656/week @ 2024-08-02 1241174/week @ 2024-08-09 1245701/week @ 2024-08-16 1277024/week @ 2024-08-23 1229199/week @ 2024-08-30 1272005/week @ 2024-09-06 1178814/week @ 2024-09-13 1305073/week @ 2024-09-20 1295878/week @ 2024-09-27 1370324/week @ 2024-10-04 1314922/week @ 2024-10-11 1390779/week @ 2024-10-18 1511921/week @ 2024-10-25 1185560/week @ 2024-11-01

5,648,797 downloads per month
Used in 8,764 crates (312 directly)

MIT AND (MIT OR Apache-2.0)

420KB
9K SLoC

libm

A port of MUSL's libm to Rust.

Goals

The short term goal of this library is to enable math support (e.g. sin, atan2) for the wasm32-unknown-unknown target (cf. rust-lang/compiler-builtins). The longer term goal is to enable math support in the core crate.

Already usable

This crate is on crates.io and can be used today in stable #![no_std] programs.

The API documentation can be found here.

Benchmark

The benchmarks are located in crates/libm-bench and require a nightly Rust toolchain. To run all benchmarks:

cargo +nightly bench --all

Contributing

Please check CONTRIBUTING.md

Minimum Rust version policy

This crate supports rustc 1.63 and newer.

License

Usage is licensed under the MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT).

Contribution

Contributions are licensed under both the MIT license and the Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0). Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as mentioned, without any additional terms or conditions.

See LICENSE.txt for full details.

No runtime deps