暂无描述

Viral B. Shah 0905558734 Add i586 build rule. 10 年之前
amd64 8b59bbc18b Export ldexp aliases on Windows 11 年之前
arm f22d7db106 Fixed build on ARM 10 年之前
bsdsrc ec41733ce8 add DLLEXPORT to bsdsrc files 11 年之前
i387 5f4979e5d1 work around msvc bug where .model must be on its own line or it forgets about it 11 年之前
ia64 0affa5be19 Enable stack protection in all .S files 11 年之前
include f22d7db106 Fixed build on ARM 10 年之前
ld128 18f475de56 add DLLEXPORT to i387 and amd64 assembly (win32 target) and ld80/ld128 files 11 年之前
ld80 18f475de56 add DLLEXPORT to i387 and amd64 assembly (win32 target) and ld80/ld128 files 11 年之前
mips 00e0e7e5ee Add Make.files for all architectures. 12 年之前
powerpc 00e0e7e5ee Add Make.files for all architectures. 12 年之前
sparc64 0affa5be19 Enable stack protection in all .S files 11 年之前
src 08f66bcea4 Revert "You can't have you cake and eat it, too." 10 年之前
test 0e10872a99 Merge pull request #25 from JuliaLang/sf/sincos 11 年之前
.gitignore 4689cf133e hide versioned libraries from git 11 年之前
.mailmap f5d2bc53f9 Add mailmap 12 年之前
LICENSE.md fa07d51db6 Fix and improve documentation about licenses 11 年之前
Make.inc 0905558734 Add i586 build rule. 10 年之前
Makefile b038823eaa Tweak SONAME handling 10 年之前
README.md 4164da0d61 Update README. 10 年之前
Symbol.map 16b9264f9d Import entire msun from FreeBSD. 13 年之前
openlibm.pc.in 5b16546ddd Added pkg-config support 10 年之前

README.md

OpenLibm

OpenLibm is an effort to have a high quality, portable, standalone libm library. 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 implementation, which in turn derives from FDLIBM 5.3. As a result, it includes a number of fixes and updates to FDLIBM that have accumulated over the years in msun, and optimized versions of many functions.

Platform support

OpenLibm builds on Linux, Mac OS X, and Windows, and with little effort, should build on FreeBSD as well. It builds with both, GCC and clang. Although largely tested on x86, it also includes experimental support for ARM. The original msun also includes support for mips, sparc64, powerpc, ia64, and alpha. These are present in the OpenLibm source tree, but no attempt has been made to build any of these.

Build instructions

  1. make or make USEGCC=1 to build with GCC. This is the default on Linux and Windows.
  2. make USECLANG=1 to build with clang. This is the default on OS X.