Commit Graph

510 Commits

Author SHA1 Message Date
Viral B. Shah ff822f3e47 Update ci.yml 2021-09-08 14:29:53 -04:00
Viral B. Shah ab8d1ad003 Update ci.yml 2021-09-08 14:22:34 -04:00
Viral B. Shah 4d97e2d5aa Update ci.yml 2021-09-08 14:10:07 -04:00
Viral B. Shah 72caeab740 Update ci.yml 2021-09-08 13:49:18 -04:00
Viral B. Shah 9dd3049e93 Create ci.yml 2021-09-08 13:41:52 -04:00
Viral B. Shah 15119bcec3 Merge pull request #239 from JuliaMath/revert-238-patch-1
Revert "prefix symbols with _ for 32-bit x86 Windows"
2021-09-08 13:35:43 -04:00
Viral B. Shah 4bca0f29b8 Revert "prefix symbols with _ for 32-bit x86 Windows" 2021-09-08 13:35:31 -04:00
Viral B. Shah 3b9454fd7c Merge pull request #238 from jeremyd2019/patch-1
prefix symbols with _ for 32-bit x86 Windows
2021-09-08 13:34:49 -04:00
Viral B. Shah 6ae63186e7 Update src/cdefs-compat.h
Co-authored-by: Elliot Saba <staticfloat@gmail.com>
2021-09-08 13:04:35 -04:00
Viral B. Shah 71a8fd1ccb Merge pull request #233 from lephe/more-long-double-aliases
Add missing aliases for 64-bit long double functions
2021-09-08 08:31:00 -04:00
jeremyd2019 7a3ef59cdb prefix symbols with _ for 32-bit x86 Windows
In a case that I believe can only be hit for Clang i686-*-windows-gnu (AKA MinGW), symbols in asm need to be prefixed with `_`.  Fixes #237
2021-09-07 10:51:31 -07:00
Viral B. Shah a87145707f Merge pull request #230 from PetteriAimonen/master
Replace remaining __strong_alias uses
2021-09-06 23:42:07 -04:00
Viral B. Shah a090d3e614 Fix powf: https://github.com/JuliaMath/openlibm/issues/212#issuecomment-913729312 2021-09-07 03:35:33 +00:00
Lephenixnoir 57dd0f905d add missing weak references for long double functions
This ensures that all standard long double functions are defined when
building with 64-bit long double.
2021-05-20 23:31:35 +02:00
Petteri Aimonen 327b1bdcde Replace remaining __strong_alias uses 2021-03-10 17:25:28 +02:00
Elliot Saba f052f42bb3 Merge pull request #228 from JuliaMath/aa/hypotl
Fix incorrect results in `hypotl` near underflow
2021-02-17 09:04:36 -08:00
Steven G. Kargl 711654eeab Fix incorrect results in hypotl near underflow
Fixes #224.
2021-02-10 12:44:19 -08:00
Viral B. Shah aeab19f47e Fix for #211
Co-authored by: @kargl
2021-02-08 09:39:30 -05:00
Viral B. Shah 5449705906 Merge pull request #227 from JuliaMath/vs/powf
Fix #211
2021-02-06 18:25:12 -05:00
Viral B. Shah 98f87135b0 Fix #211
Patched by importing latest msun version
2021-02-06 18:10:09 -05:00
Viral B. Shah 6a85b33182 Merge pull request #225 from JuliaMath/vs/strict_assign
Restore STRICT_ASSIGN on FreeBSD as suggested in #215
2021-02-06 18:09:23 -05:00
Viral B. Shah 40dac9dd77 Restore STRICT_ASSIGN on FreeBSD as suggested in #215
Co-authored-by: @kargl
2021-02-06 17:27:15 -05:00
Viral B. Shah 2d10c90c77 Merge pull request #218 from jcestibariz/fix-wasm32
Fix compilation errors on wasm32
2021-02-06 11:55:26 -05:00
Elliot Saba 5d70ac564c Merge pull request #221 from maleadt/tb/static_fenv 2021-02-02 11:43:04 -08:00
Tim Besard 63aa8757f3 Make fenv methods static on additional platforms. 2021-02-01 13:48:31 +01:00
JC Estibariz 9152b0d1b0 Fix compilation errors on wasm32 2020-12-01 13:17:32 -05:00
Elliot Saba 3cb804556f Merge pull request #217 from epsilon-0/master
don't alter toolchain vars if already provided
2020-11-30 09:25:02 -08:00
Elliot Saba c8561015a4 Merge pull request #219 from maleadt/tb/dont_export_fenv
Revert "Export `fenv` functions on all platforms (#213)"
2020-11-16 12:23:59 -08:00
Tim Besard be31bff11d Revert "Export fenv functions on all platforms (#213)"
The implementation of `fesetenv` cannot be portable, as the value of
`FE_DFL_ENV` differs between platforms. On FreeBSD, it is a actual
environment. With glibc however, it's a sentinel -1 handled in the
implementation of its floating point functions.

With openlibm based on FreeBSD's libm, it assumes `FE_DFL_ENV` to be an
actual environment. That assumption breaks using code that was compiled
against glibc, e.g., `libcuda`:

```
Thread 1 "julia-debug" received signal SIGSEGV, Segmentation fault.
0x00007ffff7b855d0 in fesetenv () from /home/tim/Julia/julia/build/release/usr/bin/../lib/libopenlibm.so
(gdb) bt
```

This reverts commit 5a27b4c0c0.

Fixes https://github.com/JuliaLang/julia/issues/38427.
2020-11-16 09:17:49 +01:00
Aisha Tammy eb21e8abd1 don't alter toolchain vars if already provided 2020-10-23 15:36:23 +00:00
Keno Fischer b34f107e24 Fix Apple Silicon build (#214)
My previous Apple Silicon build went through, so I thought it already
worked, but it turns out it accidentally built an armv7 build instead.
This actually fixes the Apple Silicon build. One thing to note in
particular is that on Apple Silicong `long double` is the same as
`double` while on Linux `long double` is a 128 bit double-double
format.

Co-authored-by: Elliot Saba <staticfloat@gmail.com>
2020-09-03 18:27:17 -04:00
Elliot Saba 5a27b4c0c0 Export fenv functions on all platforms (#213)
Win32 has been using a hack to switch the `fenv` functions from `static`
to `DLLEXPORT`, we apply that hack to all platforms that do not use a
host `fenv.h`.
2020-09-02 12:33:04 -04:00
Viral B. Shah 878948d3dd Update list of libm libraries 2020-08-29 11:25:56 -04:00
Viral B. Shah 508603d2f6 Update index.html 2020-08-29 11:18:18 -04:00
Viral B. Shah 0276147a68 Merge pull request #209 from embeddedartistry/master
Refactor: OLM_DLLEXPORT definition now lives in a standalone header.
2020-08-29 11:12:57 -04:00
Viral B. Shah f2a8b3690a Update download links to point to releases 2020-08-29 11:11:35 -04:00
Elliot Saba 1d6befd0df Merge pull request #208 from cndesantana/patch-1
Fix small typo
2020-08-26 14:58:02 -07:00
Keno Fischer 4f559d4c14 Replace a few remaining __strong_reference uses (#210)
__strong_alias is an ELF feature that is not available on Darwin/MachO.
We have openlibm_strong_reference to paper over these differences,
but we weren't using it consistently. In particular, we were still
using it to define long double -> double aliases on platforms where
these are the same type (e.g. aarch64). This didn't used to matter,
because the only such platform we supported was always Linux and
thus ELF. This patch fixes these instances thus fixing the build
on Apple Silicon.
2020-07-09 15:51:12 -04:00
Phillip Johnston 0418324ca4 Refactor: OLM_DLLEXPORT definition now lives in a standalone header.
On x86_64, openlibm_fenv.h is silently coupled to openlibm_complex.h due to the inclusion of math_private.h inside of openlibm_fenv_amd64.h. The math_private.h header was included to gain access to the OLM_DLLEXPORT macro. However, this macro is redefined, since it is originally defined in openlibm_math.h. This inclusion also exposes math_private.h to public clients, which is undesirable.

Instead, a standalone header is created to contain the OLM_DLLEXPORT definition. This header is used included in the appropriate files. openlibm_fenv_amd64.h is no longer coupled to math_private.h.
2020-06-10 15:57:08 -07:00
cndesantana 861b2ad19d Fix small typo
replace langage by language
2020-03-31 12:37:11 +02:00
Viral B. Shah 5b0e7e9813 Update FUNDING.yml 2020-02-06 05:11:46 -05:00
Viral B. Shah 382b8e92f4 Add musl-libc math library to resources. 2019-12-09 21:56:36 -05:00
Viral B. Shah f6ad75aa67 update openlibm website. 2019-12-09 21:53:47 -05:00
Viral B. Shah 5efed306d5 Bump SONAME as discussed in #200 2019-12-09 21:43:44 -05:00
Viral B. Shah e6ac7d7f52 Update README with new OS and arch support 2019-12-09 21:38:44 -05:00
Viral B. Shah f731481b25 Merge pull request #199 from llucinat/wasm32-weakref
Fix weak reference macro redefinition in wasm32 target
2019-11-15 06:44:47 -05:00
llucinat f952e167d2 Fix weak reference macro redefinition in wasm32 target 2019-11-14 08:41:10 +01:00
Viral B. Shah 97de1a46a9 Merge pull request #198 from gufe44/netbsd-fix-openlibm_weak_reference
Netbsd fix openlibm weak reference
2019-10-26 10:28:11 -04:00
gufe44 c4dca1e84a Add files via upload 2019-10-26 01:53:42 +02:00
gufe44 d4077aa131 Suggestions
https://github.com/JuliaMath/openlibm/pull/197#pullrequestreview-307404318
2019-10-26 01:05:27 +02:00