Ed Schouten
5d6cb09b96
Change existing code to use CMPLX*() instead of cpack*() where possible.
...
I am currently working on building openlibm against stock copies of
<math.h>, instead of the openlibm.h header. It seems that a C compliant
<math.h> header can be used as a drop-in replacement for openlibm.h,
with the exception that it lacks cpack*().
In FreeBSD SVN r275819 I patched up the math library by replacing
cpack*() by CMPLX*(). That way many functions become less tied to the
intrinsics of the math library. Make the same change to openlibm.
2015-01-08 12:02:56 +01:00
Ed Schouten
f9fd21c96f
Don't define __ISO_C_VISIBLE unconditionally.
...
__ISO_C_VISIBLE is already defined on FreeBSD. By default, it has a
value of 2011. This causes a lot of compiler warnings.
2015-01-07 22:20:56 +01:00
Ed Schouten
f835657bd8
Remove checks against header guards.
...
It seems that this header conditionally tests whether <complex.h> is
included, as the 'complex' keyword is otherwise not available. This
version of math_private.h includes <complex.h> unconditionally, so there
is no need to test against this.
2015-01-07 22:11:36 +01:00
Ed Schouten
71f60ec632
Prevent the use of deprecated or internal functions if possible.
...
The finite() function has been superseded by isfinite(). There is also
no need to use scalb(), as the exponent is also an integer value. We can
simply use scalbn().
There is also no need to use __isnanf(). The values passed are
guaranteed to be of type float, meaning we can safely use the standard
isnan().
2015-01-07 22:07:48 +01:00
Thomas Leonard
9c1af7f81e
Don't build complex long double functions on ARM
...
ARM doesn't have long doubles.
2015-01-05 11:36:43 +00:00
Viral B. Shah
d8c909a980
Add all the complex declarations to openlibm.h.
2014-12-05 00:37:39 +05:30
Viral B. Shah
b7da33c990
Replace math.h with openlibm.h in the new complex math functions.
2014-12-05 00:29:54 +05:30
Viral B. Shah
9b7fb281fa
Update Make.files
2014-12-05 00:24:55 +05:30
Viral B. Shah
da782e78d9
Add various complex math routines from OpenBSD.
2014-12-05 00:13:36 +05:30
Viral B. Shah
9ecf223fc1
Get the ld80 routines from OpenBSD to build on mac and linux.
...
Bump version number and SO major version, since we have
introduced new long double APIs.
2014-12-04 23:56:11 +05:30
Viral B. Shah
8b3b520675
Fix #35
2014-12-04 21:41:37 +05:30
Viral B. Shah
2c9b14cabd
Merge pull request #67 from eschnett/master
...
Simplify code, avoid compiler warnings
2014-12-02 09:50:49 +05:30
Thomas Leonard
4cb9231f1a
Removed some uses of sys/types.h
...
It's useful to be able to compile openlibm in environments where this
doesn't exist (e.g. OS kernels).
2014-12-01 11:10:41 +00:00
Erik Schnetter
2b7040952e
Add assert statements
2014-09-22 16:18:53 -04:00
Erik Schnetter
9c8e061ab1
Add comments describing valid argument range for internal functions
2014-09-22 16:01:47 -04:00
Erik Schnetter
ca3aaa3a82
Remove trailing whitespace in makefile
2014-09-19 11:48:43 -04:00
Erik Schnetter
e2138aed2e
Avoid compiler warnings
2014-09-19 11:48:34 -04:00
Erik Schnetter
c1a08f02af
Simplify code, avoid compiler warnings
2014-09-19 11:36:33 -04:00
Viral B. Shah
4a70b227d4
Do not export rem_pio2 from openlibm. It will be exported from openspecfun.
2014-07-09 19:56:28 -04:00
Viral B. Shah
08f66bcea4
Revert "You can't have you cake and eat it, too."
...
This reverts commit 10fed4ae49
.
2014-06-12 15:56:39 +05:30
Viral B. Shah
f9cc2db46e
Merge pull request #40 from weshatheleopard/patch-1
...
You can't have you cake and eat it, too.
2014-06-12 12:55:53 +05:30
Elliot Saba
e9d02ee729
Fix compilation by including cdefs-compat.h in math_private.h
...
Also fix redefinition of __pure2
2014-06-05 22:08:41 -07:00
Thomas Leonard
f22d7db106
Fixed build on ARM
...
Removed all long double support, since ARM doesn't have long doubles.
2014-05-26 10:55:49 +01:00
Thomas Leonard
15fa3252fc
Merge noinc branch
2014-05-19 15:29:33 +01:00
Milan Bouchet-Valat
5a0e3e9c5c
Fix missing includes
...
Last commit made defition of cpack() not available to files
which do not include openlibm.h.
2014-03-30 22:53:05 +02:00
Milan Bouchet-Valat
3e769e48b8
Move complex number declarations to openlibm.h
...
These are used by openspecfun, thus they need to be available
from public headers.
2014-03-29 11:24:31 +01:00
Jameson Nash
66e6f8ea91
normalize __WIN32__ to _WIN32, which is defined by all Windows compilers
2014-03-18 20:47:48 -04:00
Elliot Saba
7065fdf6c5
Remove {cdefs,types}-compat.h from openlibm.h
2014-02-08 21:35:14 -08:00
weshatheleopard
10fed4ae49
You can't have you cake and eat it, too.
...
If you declare zero=0.0, then USE it.
2014-01-31 16:34:46 -06:00
Jeff Bezanson
9ca11f20c6
updates to s_round.c from FreeBSD
2013-12-19 17:52:23 -05:00
Jeff Bezanson
3566e32d84
new polynomials for erff, by Steve Kargl
...
these are both faster and more accurate
see http://svnweb.freebsd.org/base/head/lib/msun/src/s_erff.c?view=log
2013-12-19 14:06:05 -05:00
Jeff Bezanson
89d232d114
more accurate comment for the x==1.0 hack
2013-12-14 15:49:02 -05:00
Jeff Bezanson
9bc257a323
special-case more accurate answer for exp(1.0)
2013-12-12 16:42:05 -05:00
Jameson Nash
f7c5ad7088
add DLLEXPORT to files in src and int isopenlibm() = 1
function"
2013-08-03 05:16:01 -04:00
Elliot Saba
4846e7d6c4
Remove debug printf()
2013-07-20 01:21:11 -07:00
Viral B. Shah
30852cae3b
Replace use of math.h with openlibm.h
2013-07-18 19:55:51 +05:30
Elliot Saba
e91e6dc990
Minor formatting to make sin/cos easier to read
2013-07-15 18:29:30 -07:00
Elliot Saba
0cf89fad5d
Add in sincos(), an efficient method of computing the sine and cosine of an angle together
2013-07-15 18:29:30 -07:00
Viral B. Shah
29af332f36
Add cpow from OpenBSD
...
Use clang by default on Darwin
Enable cpow tests
Fix #22
2013-07-14 18:33:56 +05:30
Jeff Bezanson
c9cf16d2de
add special cases for powers 3 and 4, in addition to 2
2013-04-03 14:40:47 -04:00
Jeff Bezanson
1b9b759b48
add exported names for ldexp
2013-03-02 21:11:39 -05:00
Steven G. Johnson
67d2324543
use C11 CMPLX or gcc __builtin_complex if available to define cpack macros
2012-12-20 14:04:23 -05:00
Jeff Bezanson
4ebe327d24
fix comparison syntax in s_nan.c
2012-11-01 15:09:48 -04:00
Mike Nolta
ec53659c6a
fixes for freebsd9
2012-10-30 17:54:30 -04:00
Keno Fischer
fed038b32f
Remove Leftover Makefiles from old build system
2012-05-26 17:06:20 -04:00
Keno Fischer
adb103acec
Build fixes for Windows
2012-05-25 21:25:13 -04:00
Keno Fischer
307d7361c5
automatic arch selection in Makefile
2012-05-25 16:24:37 -04:00
Keno Fischer
04e12006e5
address compiler warnings in #3
2012-05-24 23:45:05 -04:00
Keno Fischer
f0862df1db
Allow compilation of assembly files on OSX
2012-05-24 23:14:58 -04:00
Jameson Nash
ac201ff1ac
fpclassify definition
2012-05-22 19:02:48 -04:00