Commit Graph

404 Commits

Author SHA1 Message Date
Elliot Saba d982368bec Fix `arm` floating-point status register code
* Use an actual compiler definition to determine whether we have a
  floating-point unit or not.

* Use a modern (VFPU) assembly instruction to get/set the fpsr

* If we don't have an fpsr, at least zero out the return value
2017-01-16 11:44:14 -08:00
Elliot Saba c21453060d Cleanup `ARCH` handling, reorganize `AArch64` and `Make.inc`.
* Previously, behavior differed if the same value of `ARCH` was defined
  within `Make.inc` or defined on the command line.  Don't do that.

* Provide saner defaults for `ARCH` and `MARCH`, and more importantly,
  allow for the proper overriding of both.

* Split `AArch64` code further away from the other `arm` code.
2017-01-16 11:44:14 -08:00
Tony Kelman 1581174c85 Merge pull request #146 from twadleigh/dll-a-for-windows
Version bump for Makefile change.
2016-08-28 09:17:43 -07:00
Tracy Wadleigh 868231bc24 Version bump for Makefile change. 2016-08-28 07:55:19 -07:00
Tony Kelman b6b8422bc2 Merge pull request #145 from twadleigh/dll-a-for-windows
Generate libopenlibm.dll.a for windows.
2016-08-28 02:54:45 -07:00
Tracy Wadleigh 6708c96b06 Generate libopenlibm.dll.a for windows. 2016-08-27 16:55:43 -07:00
Elliot Saba c0566d25e6 Merge pull request #133 from JuliaLang/sf/clang_on_linux
[WIP] Test linux clang on Travis
2016-08-22 13:48:54 -05:00
Keno Fischer e7e2050266 Fix invalid assembly directive caught by clang
Similar to the x86_64 changes a while back
2016-08-21 18:45:29 -04:00
Simon Byrne 71e79eb6f7 Bump version for Makefile change. 2016-08-09 09:47:12 +01:00
Simon Byrne 1492ff029a Merge pull request #142 from JuliaLang/sf/cflags
Set optimization level only if not already overridden
2016-08-09 09:28:35 +01:00
Elliot Saba 75ec57d90f Set optimization level only if not already overridden 2016-08-08 17:27:20 -07:00
Viral B. Shah 0fa599cce8 BUMP VERSION 2016-08-06 20:30:31 +05:30
Viral B. Shah f8d64df596 Restore the optimization level to -O3 by default. 2016-08-06 20:19:14 +05:30
Elliot Saba b5e67495ba Try adding a matrix build for `clang` on linux 2016-07-20 22:44:22 -07:00
Elliot Saba 9c45e36809 Use `__clang__` as identifying mark of `clang` insted of `USECLANG` 2016-07-20 22:43:05 -07:00
Elliot Saba 39dd4feb7c Bump `ulp` limits higher for Travis tests 2016-07-20 22:43:05 -07:00
Elliot Saba 343a7199c0 Re-enabled OSX tests 2016-07-20 22:43:05 -07:00
Elliot Saba 48976950cd Remove floating-point exception checks when compiling with `clang` 2016-07-20 22:40:23 -07:00
Elliot Saba 232ba9db6e Modify Openlibm maximum ulp definitions for clang 2016-07-20 22:40:23 -07:00
Tony Kelman b170b72c0e Merge pull request #140 from arjenroodselaar/split-install-target
Split install into subtargets
2016-07-19 15:30:31 -07:00
Arjen Roodselaar 4002a91a44 Split install into subtargets
When building a cross-compile toolchain for a freestanding platform one may not
want to build and install shared objects.
2016-07-19 14:26:15 -07:00
Viral B. Shah 5dd13830bf Merge pull request #141 from arjenroodselaar/fix-arm-decls
Include missing decls for ARM
2016-07-19 15:46:33 -04:00
Arjen Roodselaar 212f8a1b4c Include missing decls for ARM 2016-07-18 17:05:09 -07:00
Elliot Saba 705cbaea30 Merge pull request #139 from petercolberg/travis
Test Linux amd64/i686/arm64
2016-06-24 14:49:28 -07:00
Peter Colberg 806c725ef6 Test Linux arm64 using qemu user emulation 2016-06-23 23:32:31 -04:00
Peter Colberg aeaf9cefa7 Fix undefined reference to __fpgetprec on i386
Closes #137

This reverts commit ebcd40f1b0.

The tests were failing to load the library on i386 due to an undefined
reference to __fpgetprec, which resulted from __fpgetprec not being inlined
due to the missing definition of __GNUCLIKE_ASM and __CC_SUPPORTS___INLINE__.
2016-06-23 23:32:31 -04:00
Peter Colberg 29bf900ede Test Linux i686
This build fails due to #137, which is resolved by the next commit.
2016-06-23 23:32:31 -04:00
Peter Colberg 57ed355361 Fix broken compilation with ARCH=i686
`override CFLAGS_add` caused make to discard any further assignments.

This regression stems from commit ebe1db3ce4.
2016-06-23 23:32:31 -04:00
Peter Colberg 50c52d2b0f Use Travis build matrix to test different platforms
Create a clean, minimal, cross-platform Travis script with a build
matrix for testing different operating systems and architectures.
2016-06-23 23:32:31 -04:00
Elliot Saba e2fc5dd2f8 Bump VERSION 2016-05-18 11:13:34 -07:00
Viral B. Shah 07f61f312b Merge pull request #135 from JuliaLang/sf/versioning
Version libopenlibm properly
2016-05-17 11:24:01 -05:00
Viral B. Shah 045dfd81d0 Merge pull request #134 from EdSchouten/build-fixes
Update remaining references to bsd_cdefs.h to cdefs-compat.h.
2016-05-17 11:23:48 -05:00
Elliot Saba 4d0bc52385 Version libopenlibm properly 2016-05-16 23:42:16 -07:00
Ed Schouten ebcd40f1b0 Update remaining references to bsd_cdefs.h to cdefs-compat.h.
It looks like we didn't substitute the name of the bsd_cdefs.h header
file in two source files when renaming it.
2016-05-15 11:28:26 +02:00
Keno Fischer 5fd9dcbbdf Fix incorrect attribute as a result of blanket rename 2016-05-03 18:48:45 -04:00
Viral B. Shah 5501bf0576 Merge pull request #131 from ginggs/build-on-aarch64
WIP: Enable build on aarch64
2016-04-15 14:18:42 +05:30
Graham Inggs 019990ecb7 WIP: Enable build on aarch64 2016-04-08 19:37:13 +02:00
Viral B. Shah 960fdbf8bd Merge pull request #128 from JuliaLang/kf/clangwarnings
Fix Clang warnings on Windows
2016-03-14 16:02:56 +08:00
Keno Fischer 28fb939b0d Blanket rename DLLEXPORT->OLM_DLLEXPORT 2016-03-13 21:07:55 -04:00
Keno Fischer 459b557671 Also add DLLEXPORT in fenv.c 2016-03-13 22:52:18 +00:00
Keno Fischer 81053b7fcb Fix Clang warnings on Windows
- Align DLLEXPORT in definitions and declations. There is still a few
  cases left, where the declation in the compiler's complex.h disagrees
  with the implementation here. For now we can't do anything about that,
  but maybe should be revisited in the future.
- Fix the syntax on an .ascii directive that gcc accepted mistakingly, but
  clang does not.
2016-03-13 06:21:15 +00:00
Viral B. Shah 4fcad1584a Merge pull request #126 from JuliaLang/nl/includes2
More header fixes
2016-03-08 02:28:02 -08:00
Milan Bouchet-Valat e836b30cc7 Avoid defining __pure2 if already defined
This gets rid of a warning on Mac OS X due to the fact that
sys/cdefs.h defines it already.
2016-03-08 10:34:20 +01:00
Milan Bouchet-Valat 0df58e7ae3 Use quotes instead of <> with #include for private headers 2016-03-03 17:28:06 +01:00
Milan Bouchet-Valat 226faf4e11 Avoid redefining __pure2 in types-compat 2016-03-03 17:05:12 +01:00
Viral B. Shah f3d5009367 Fix #57 2016-03-03 14:53:33 +05:30
Viral B. Shah 385103602c Merge pull request #125 from JuliaLang/nl/includes
Fix various warnings
2016-03-03 01:16:02 -08:00
Milan Bouchet-Valat 2c3f3b5a99 Cleanup bsd_cdefs.h, merge i387 and amd64 duplicate files
Most macros were not actually used. This gets rid of warnings when
building on Linux.
2016-03-02 21:21:25 +01:00
Milan Bouchet-Valat b5ca785d4c Avoid redefining endianness macros with some gcc versions
_LITTLE_ENDIAN and _BIG_ENDIAN are built-in on some platforms/versions.
Better use __ORDER_LITTLE_ENDIAN__, __ORDER_BIG_ENDIAN__ and __BYTE_ORDER__,
which are standard for gcc and clang, and define them when they are missing.
Also remove the special-case for FreeBSD, which is apprently not needed.
2016-03-02 21:21:25 +01:00
Milan Bouchet-Valat 949c530994 Fix misleading indentation (spotted by GCC 6) 2016-03-02 21:21:25 +01:00