Make libm available to product and vendor am: 63608f3777 am: d54044f930 am: a9c6661054

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

Change-Id: Iaf9fe98413780e6ddb8d7ae4de109319d5511a9e
Signed-off-by: Automerger Merge Worker <[email protected]>
tree: c5c1cf6bce4c26734a908bd85bbd89074eb1ccea
  1. .github/
  2. ci/
  3. patches/
  4. src/
  5. .cargo_vcs_info.json
  6. .gitignore
  7. Android.bp
  8. build.rs
  9. Cargo.toml
  10. Cargo.toml.orig
  11. cargo2android.json
  12. CHANGELOG.md
  13. CONTRIBUTING.md
  14. LICENSE-APACHE
  15. LICENSE-MIT
  16. METADATA
  17. MODULE_LICENSE_APACHE2
  18. OWNERS
  19. README.md
  20. TEST_MAPPING
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.