## OpenLibm

OpenLibm is an effort to have a high quality, portable, standalone C mathematical library (`libm`). It can be used standalone in applications and programming language implementations.

The project was born out of a need to have a good `libm` for the Julia programming langage that worked consistently across compilers and operating systems, and in 32-bit and 64-bit environments.

### History

The OpenLibm code derives from the FreeBSD msun and OpenBSD libm implementations, which in turn derive from FDLIBM 5.3. Over and above that, OpenLibm itself has received a number of patches to make it platform independent and portable.

### Platform support

OpenLibm builds on Linux, macOS, Windows, FreeBSD, OpenBSD, NetBSD, and DragonFly BSD. It builds with both GCC and clang. OpenLibm supports x86, amd64, arm, aarch64, riscv64, ppc64le, mips, wasm32, s390(x), and loongarch64.

### Other relevant projects

1. MUSL The libm library in the musl-libc project
2. FDLIBM: Freely Distributable Math Library
3. FreeBSD msun: FreeBSD's math library
4. CRlibm: Correctly Rounded mathematical library
5. MUSL
6. CORE-MATH Project

### Acknowledgements

PowerPC support for OpenLibm was graciously sponsored by IBM.