libm crate v0.2.1 am: fb178dc981 am: c373663cc7 am: 06ac9e9a87

Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/libm/+/1517420

Change-Id: I2743925bb025beac95415ca0362feb6370616cbc
tree: 2c3aaa231ba28d4f2ee863192a37c30ad5806fd5
  1. .github/
  2. ci/
  3. src/
  4. .cargo_vcs_info.json
  5. .gitignore
  6. build.rs
  7. Cargo.toml
  8. Cargo.toml.orig
  9. CHANGELOG.md
  10. CONTRIBUTING.md
  11. LICENSE-APACHE
  12. LICENSE-MIT
  13. METADATA
  14. MODULE_LICENSE_APACHE2
  15. OWNERS
  16. README.md
README.md

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

License

Licensed under either of

at your option.

Contribution

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 above, without any additional terms or conditions.