#float #math #libm #no_std

no-std m

A C free / pure Rust mathematical library (“libm”) for no_std code

2 releases

0.1.1 Oct 20, 2016
0.1.0 Oct 15, 2016

#160 in Math

Download history 31/week @ 2019-12-02 63/week @ 2019-12-09 50/week @ 2019-12-16 72/week @ 2019-12-23 58/week @ 2019-12-30 97/week @ 2020-01-06 93/week @ 2020-01-13 45/week @ 2020-01-20 42/week @ 2020-01-27 85/week @ 2020-02-03 44/week @ 2020-02-10 50/week @ 2020-02-17 60/week @ 2020-02-24 29/week @ 2020-03-02 32/week @ 2020-03-09 26/week @ 2020-03-16

171 downloads per month
Used in 5 crates (2 directly)


619 lines

Build status Build status crates.io crates.io


A C free / pure Rust mathematical library ("libm") for no_std code

This is a port of OpenLibm.


Change log


The m crate is a port of the OpenLibm library, which contains code that is covered by various licenses:

The OpenLibm code derives from the FreeBSD msun and OpenBSD libm implementations, which in turn derives from FDLIBM 5.3. As a result, it has a number of fixes and updates that have accumulated over the years in msun, and also optimized assembly versions of many functions. These improvements are provided under the BSD and ISC licenses. The msun library also includes work placed under the public domain, which is noted in the individual files. Further work on making a standalone OpenLibm library from msun, as part of the Julia project is covered under the MIT license.

TL;DR OpenLibm contains code that is licensed under the 2-clause BSD, the ISC and the MIT licenses and code that is in the public domain. As a user of this code you agree to use it under these licenses. As a contributor, you agree to allow your code to be used under all these licenses as well.

Full text of the relevant licenses is in LICENSE.md.

No runtime deps