Skip to content

Commit 4164da0

Browse files
committed
Update README.
1 parent e9d02ee commit 4164da0

1 file changed

Lines changed: 29 additions & 13 deletions

File tree

README.md

Lines changed: 29 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,34 @@
1-
## OpenLIBM
1+
## OpenLibm
22

3-
OpenLIBM is an effort to have a high quality standalone LIBM
4-
library. It is meant to be used standalone in applications and
5-
programming language implementations.
3+
OpenLibm is an effort to have a high quality, portable, standalone
4+
`libm` library. It can be used standalone in applications and
5+
programming language implementations.
66

7-
OpenLibm builds on Linux, Mac OS X, and Windows, and with little effort,
8-
should build on FreeBSD as well. It builds with both, GCC and clang.
7+
The project was born out of a need to have a good `libm` for the
8+
[Julia programming langage](http://www.julialang.org) that worked
9+
consistently across compilers and operating systems, and in 32-bit and
10+
64-bit environments.
911

10-
The OpenLIBM code derives from the FreeBSD msun implementation, which
11-
in turn derives from FDLIBM 5.3. As a result, it has a number of fixes and
12-
updates that have accumulated over the years in msun, and also optimized
13-
assembly versions of many functions.
12+
### History
1413

15-
### Build instructions:
14+
The OpenLibm code derives from the [FreeBSD
15+
msun](http://ftp.freebsd.org/pub/FreeBSD/FreeBSD/development/FreeBSD-CVS/src/lib/msun/)
16+
implementation, which in turn derives from [FDLIBM
17+
5.3](http://www.netlib.org/fdlibm/). As a result, it includes a number
18+
of fixes and updates to FDLIBM that have accumulated over the years in
19+
`msun`, and optimized versions of many functions.
1620

17-
1. `make` or `make USEGCC=1` to build with GCC.
18-
2. `make USECLANG=1` to build with clang.
21+
### Platform support
22+
23+
OpenLibm builds on Linux, Mac OS X, and Windows, and with little
24+
effort, should build on FreeBSD as well. It builds with both, GCC and
25+
clang. Although largely tested on x86, it also includes experimental
26+
support for ARM. The original `msun` also includes support for mips,
27+
sparc64, powerpc, ia64, and alpha. These are present in the OpenLibm
28+
source tree, but no attempt has been made to build any of these.
29+
30+
### Build instructions
31+
32+
1. `make` or `make USEGCC=1` to build with GCC. This is the default on
33+
Linux and Windows.
34+
2. `make USECLANG=1` to build with clang. This is the default on OS X.

0 commit comments

Comments
 (0)