Alex Crichton f783ff454b Remove most #[inline] annotations
These annotations fall into a few categories

* Some simply aren't needed since functions will always be in the same
  CGU anyway and are already candidates for inlining.
* Many are on massive functions which shouldn't be inlined across crates
  due to code size concerns.
* Others aren't necessary since calls to this crate are rarely inlined
  anyway (since it's lowered through LLVM).

If this crate is called directly and inlining is needed then LTO can
always be turned on, otherwise this will benefit downstream consumers by
avoiding re-codegen'ing so many functions.
2019-07-10 08:42:28 -07:00
..
2019-07-02 08:22:03 +02:00
2019-07-02 08:33:11 +02:00
2019-07-10 08:42:28 -07:00
2019-07-02 09:07:10 +02:00
2019-05-09 18:40:19 +03:00
2019-07-03 23:35:24 +02:00
2019-05-02 12:12:47 -07:00
2018-07-12 00:44:28 -05:00
2018-07-12 00:44:28 -05:00
2019-07-03 23:53:35 +02:00

libm

Build Status

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-nursery/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.