Thomas Schwinge
777b0332c0
Use GCC's builtins for generating NaNs.
2013-03-15 19:10:20 +01:00
Thomas Schwinge
64d063b800
Add one test, removed a duplicated one, add a few comments about missing tests.
2013-03-15 19:08:04 +01:00
Thomas Schwinge
67e971f18f
Better distinguish between NaN/qNaN/sNaN.
2013-03-15 19:06:02 +01:00
Thomas Schwinge
64487e1264
Enable tests for x86_64, too, which currently are enabled only for x86.
2013-03-15 19:02:18 +01:00
Thomas Schwinge
e015e27b90
Fix copy'n'pastos.
2013-03-15 19:00:23 +01:00
Joseph Myers
41c7328e85
Fix spurious underflow exceptions for Bessel functions for double (bug 14155).
2013-03-14 17:47:30 +00:00
Siddhesh Poyarekar
e4f223248e
Fix some testsuite build warning fixes in libm
2013-02-19 21:20:44 +05:30
Joseph Myers
daaa7713e9
Remove bounded-pointers build system support.
2013-02-15 15:07:54 +00:00
Joseph Myers
e97ed6ddbe
Remove bp-sym.h and BP_SYM uses from C code.
2013-02-14 13:12:02 +00:00
Joseph Myers
8cf28c5ebe
Fix casinh spurious underflows away from [-i,i] (bug 15062).
2013-01-31 22:55:29 +00:00
Joseph Myers
728d7b43fc
Fix cacos real-part inaccuracy for result real part near 0 (bug 15023).
2013-01-17 20:25:51 +00:00
David S. Miller
32fcb36dbf
Add 64-bit VIS3 optimized GMP routines for sparc.
...
* math/Makefile: Recognize gmp-sysdep_routines.
* sysdeps/sparc/sparc64/multiarch/Makefile: Add VIS3 optimized GMP routines
to sysdeps.
* sysdeps/sparc/sparc64/multiarch/add_n-vis3.S: New file.
* sysdeps/sparc/sparc64/multiarch/add_n.S: New file.
* sysdeps/sparc/sparc64/multiarch/addmul_1-vis3.S: New file.
* sysdeps/sparc/sparc64/multiarch/addmul_1.S: New file.
* sysdeps/sparc/sparc64/multiarch/mul_1-vis3.S: New file.
* sysdeps/sparc/sparc64/multiarch/mul_1.S: New file.
* sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S: New file.
* sysdeps/sparc/sparc64/multiarch/sub_n.S: New file.
* sysdeps/sparc/sparc64/multiarch/submul_1-vis3.S: New file.
* sysdeps/sparc/sparc64/multiarch/submul_1.S: New file.
2013-01-11 23:39:02 -08:00
Joseph Myers
828beb132d
Use __extension__ with long long in installed headers.
2013-01-10 20:19:45 +00:00
Andreas Schwab
8790af5f9f
Revert "CFLAGS-test-tgmath2.c"
...
This reverts commit 3167bfc62b
.
2013-01-10 10:44:04 +01:00
Andreas Schwab
3167bfc62b
CFLAGS-test-tgmath2.c
2013-01-10 09:59:58 +01:00
Joseph Myers
a9708fed77
Fix casinh, casin overflow (bug 14996).
2013-01-07 14:59:53 +00:00
Joseph Myers
cdc1c96fba
Fix casinh, casin inaccuracy from cancellation (bug 14994).
2013-01-04 13:25:17 +00:00
Joseph Myers
568035b787
Update copyright notices with scripts/update-copyrights.
2013-01-02 19:05:09 +00:00
Mike Frysinger
9c89fca6e0
math: use existing nonnull attribute define
...
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-12-30 13:00:13 -05:00
Joseph Myers
1bead169c3
Fix powl inaccuracy for x86_64 and x86 (bug 13881).
2012-11-28 13:40:54 +00:00
Joseph Myers
7184dcdf26
Disable some fma tests for ldbl-128ibm.
2012-11-22 19:57:58 +00:00
Joseph Myers
0a42601f27
Fix ldbl-128ibm atanl spurious underflows (bug 14871).
2012-11-22 19:56:47 +00:00
Joseph Myers
1468ded38e
Fix ldbl-128ibm hypotl internal underflows (bug 14869).
2012-11-22 14:58:41 +00:00
Joseph Myers
8e27e3cc45
Fix ldbl-128ibm hypotl inaccuracy for arguments with large ratio (bug 14868).
2012-11-22 14:57:22 +00:00
Joseph Myers
c9c0279bcb
Mark some clog / clog10 underflows as expected for IBM long double.
2012-11-22 14:56:14 +00:00
David S. Miller
6d33cc9d9b
Fix spurious underflows in ldbl-128 atan implementation.
...
With help from Joseph Myers.
* sysdeps/ieee754/ldbl-128/s_atanl.c (__atanl): Handle tiny and
very large arguments properly.
* math/libm-test.inc (atan_test): New tests.
(atan2_test): New tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2012-11-19 15:31:24 -08:00
David S. Miller
05b227bdae
Correct tinyness handling in long-double and float y0/y1.
...
With help from Joseph Myers.
* sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Adjust tinyness
cutoff to 2**-13.
* sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Adjust tinyness
cutoff to 2**-25.
* sysdeps/ieee754/ldbl-128/e_j0l.c (U0): New constant.
( __ieee754_y0l): Avoid arithmetic underflow when 'x' is very
small.
* sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l): Likewise.
* math/libm-test.inc (y0_test): New tests.
(y1_test): New tests.
* sysdeps/i386/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Update.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-11-18 12:33:53 -08:00
Marcus Shawcroft
2fd8978571
Fix buffer overflow in libm-test.inc check_complex()
2012-11-15 18:02:03 +00:00
Joseph Myers
60e235ee2a
Fix spurious underflows from pow with results close to 1 (bug 14811).
2012-11-07 13:03:31 +00:00
Joseph Myers
82477c28f4
Fix fma underflows with small x * y (bug 14793).
2012-11-06 14:12:54 +00:00
Joseph Myers
a0c2940d67
Fix fma overflow results outside round-to-nearest mode (bug 14797).
2012-11-04 19:26:02 +00:00
Thomas Schwinge
b830319d49
[BZ #157 ] Remove include/stub-tag.h for good.
2012-11-04 19:59:40 +01:00
Joseph Myers
5b5b04d628
Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796).
2012-11-03 19:48:53 +00:00
Joseph Myers
0155d5b26e
Make math.h FP_* macros usable in #if (bug 3439).
2012-11-02 22:11:21 +00:00
Joseph Myers
473611b22d
Fix fma (a, b, c) for small a * b (bugs 14784, 14785).
2012-11-01 16:47:26 +00:00
Joseph Myers
16a0e2ec87
Fix ldbl-128ibm atan2l for x near 1.
2012-10-31 20:44:59 +00:00
Joseph Myers
ef82f4da79
Fix fma underflow exceptions in after-rounding edge cases.
2012-10-31 13:01:17 +00:00
Joseph Myers
8627a2329c
Fix fma missing underflows and bad results for some subnormal results (bugs 14152, 14783).
2012-10-30 13:54:50 +00:00
Markus Trippelsdorf
d077f65fc8
Comment on slow compilation of math/test-tgmath2.c
...
The math/test-tgmath2.c testcase uses very long lines
(>3 million), so it may take a while to compile it.
See: http://llvm.org/bugs/show_bug.cgi?id=14106 and
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54402
2012-10-18 16:03:49 -04:00
Joseph Myers
f9b9d9c945
Don't call feclearexcept in gamma function tests.
2012-10-17 23:42:32 +00:00
Joseph Myers
0e8e0c1c93
Make libm-test.inc test comparison macros.
2012-10-09 23:34:12 +00:00
Joseph Myers
ef1bb3618c
Improve libm test coverage of classification macros / functions.
2012-10-08 22:22:23 +00:00
Joseph Myers
28234b077e
Improve libm-test.inc comment.
2012-10-05 17:06:23 +00:00
Joseph Myers
bec749fda1
Fix sign of inexact zero return from fma (bug 14645).
2012-10-01 08:30:06 +00:00
Joseph Myers
8ec5b01346
Fix sign of exact zero return from fma (bug 14638).
2012-09-29 18:31:54 +00:00
Joseph Myers
d032e0d29b
Fix inaccuracy of clog, clog10 near |z| = 1 (bug 13629).
2012-09-25 19:43:49 +00:00
Liubov Dmitrieva
6d3bf19931
Fix wrong ussage of sincos for subnormal arguments
2012-09-25 20:41:17 +02:00
Liubov Dmitrieva
4ffffbd272
Add optimized sinf and cosf routines for x86 and x86-64
...
* sysdeps/i386/i686/fpu/multiarch/Makefile (sysdep_routines):
Add s_sinf-sse2, s_conf-sse2.
* sysdeps/i386/i686/fpu/multiarch/s_sinf-sse2.S: New file.
* sysdeps/i386/i686/fpu/multiarch/s_cosf-sse2.S: New file.
* sysdeps/i386/i686/fpu/multiarch/s_sinf.c: New file.
* sysdeps/i386/i686/fpu/multiarch/s_cosf.c: New file.
* sysdeps/ieee754/flt-32/s_sinf.c (SINF, SINF_FUNC): Add macros
for using routine as __sinf_ia32.
Use macro for function declaration and weak_alias.
* sysdeps/ieee754/flt-32/s_cosf.c (COSF, COSF_FUNC): Add macros
for using routine as __cosf_ia32.
Use macro for function declaration and weak_alias.
* sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S: Fix Copyright.
* sysdeps/i386/i686/fpu/multiarch/e_expf.c: Fix Copyright.
* sysdeps/x86_64/fpu/s_sinf.S: New file.
* sysdeps/x86_64/fpu/s_cosf.S: New file.
* sysdeps/x86_64/fpu/libm-test-ulps: Update.
* math/libm-test.inc (cos_test): Add more test cases.
(sin_test): Likewise.
(sincos_test): Likewise.
2012-09-03 15:32:13 +02:00
Joseph Myers
d0419dbfbd
Improve clog, clog10 handling of values with real or imaginary part slightly above 1 (bug 13629).
2012-07-31 14:21:19 +00:00
Joseph Myers
da865e95bc
Improve clog, clog10 handling of values with real or imaginary part 1 (bug 13629).
2012-07-26 11:31:35 +00:00
Marek Polacek
354691b7b5
Set up errno properly for yn.
2012-07-25 12:59:36 +02:00
Thomas Schwinge
c23c33b01e
Add missing includes.
...
Follow-up to commits 38de94a5ef
,
76da726532
.
2012-07-22 22:25:14 +02:00
Marek Polacek
541428fecf
Fix ynl return value with LDBL_MIN.
2012-07-12 16:34:47 +02:00
Joseph Myers
638a572eb0
Fix clog, clog10 spurious underflow exceptions (bug 14337).
2012-07-09 11:06:34 +00:00
Joseph Myers
9ad63c23ea
Fix tanf underflow close to pi/4 (bug 14154).
2012-07-06 21:19:38 +00:00
Joseph Myers
f17ac40d7c
Fix expm1 spurious underflow exceptions (bug 6778).
2012-07-06 11:17:41 +00:00
Joseph Myers
cdfe2c5eb3
Fix csqrt underflow (bugs 14157, 14331).
2012-07-05 11:02:13 +00:00
Joseph Myers
ca61cf32d9
Fix ctan, ctanh of subnormals in round-upwards mode (bug 14328).
2012-07-04 09:55:26 +00:00
Joseph Myers
7a845b2c23
Fix float range reduction problems (bug 14283).
2012-07-03 17:11:41 +00:00
Joseph Myers
e2283f38fe
Add cosh tests for bug 14273.
2012-07-03 17:06:55 +00:00
Joseph Myers
10285c2113
Fix pow (0.0, -Inf) (bug 14241).
2012-06-15 11:27:51 +00:00
Joseph Myers
75fa192131
Allow more spurious underflow exceptions from csqrt and Bessel functions.
2012-06-14 14:35:24 +00:00
Joseph Myers
c5bfe3d5ba
Fix fmod for subnormals (bug 14048).
2012-06-01 19:05:46 +00:00
Joseph Myers
2d10d547c1
Use more decimal places for long double constants in math.h.
2012-05-31 21:25:48 +00:00
Marek Polacek
d81dcb3569
Fix fma test for underflow.
2012-05-26 13:49:49 +02:00
Joseph Myers
b65504975c
Fix acosf underflow (bug 14153).
2012-05-25 11:07:07 +00:00
Joseph Myers
7a25eb06bf
Add tests for underflow exception bugs 10846, 14036.
2012-05-24 15:36:54 +00:00
Joseph Myers
795405f956
Don't include exceptions in libm-test-ulps test names.
2012-05-24 12:14:03 +00:00
Joseph Myers
80bad0ccae
Test underflow exceptions in libm-test.inc.
2012-05-24 11:26:36 +00:00
Joseph Myers
e0b16cc25c
Fix ccos, csin, ccosh, csinh overflows (bug 14123).
2012-05-19 15:35:29 +00:00
Chris Metcalf
0af797def3
math: support platforms with limited FP rounding or exception support
...
For some tests, just claim that fetestexcept() always returns true,
so the rest of the test can be compiled.
For libm-test, provide known bogus values for unsupported rounding
modes, so fesetround() will return failure.
Elsewhere, just add some #ifdefs to avoid code that uses particular
FP exceptions if the exceptions aren't supported.
2012-05-17 08:50:41 -04:00
Roland McGrath
38de94a5ef
Add a missing #include.
2012-05-10 15:57:24 -07:00
Adhemerval Zanella
89c9aa491a
Fix for logb/logbf/logbl (bugs 13954/13955/13956)
...
POSIX 2008 states that if the input for 'logb[f|l]' is a subnormal number
it should be treated as if it were normalized. This means the
implementation should calculate the log2 of the mantissa and add it to the
subnormal exponent (-126 for float and -1022 for double and IBM long
double). This patch takes care of that.
2012-05-10 15:11:55 -05:00
Joseph Myers
495fd99f3a
Fix x86/x86_64 expm1l inaccuracy and exceptions (bugs 13885, 13923).
2012-05-07 19:13:08 +00:00
Joseph Myers
d8b82cad1b
Fix exp10 inaccuracy and exceptions (bugs 13884, 13914).
2012-05-06 18:23:44 +00:00
Joseph Myers
6c23e11c4d
Fix libm-test.inc ulps calculation for subnormals (bug 14064).
2012-05-06 18:20:21 +00:00
Joseph Myers
5779f134a0
Disable one hypot test for inline double testing.
2012-05-05 19:38:31 +00:00
Joseph Myers
41498f4db1
Fix missing exceptions from exp (bugs 13787, 13922, 14036).
2012-05-05 19:37:39 +00:00
Andreas Jaeger
0be196adda
Use -frounding-math for math testsuite
...
We should tell GCC that we manipulate the rounding mode and
therefore add -frounding-math to these files that call fesetround.
2012-05-02 16:33:18 +02:00
Joseph Myers
7cb029ee6e
Fix nexttoward bugs (bugs 2550, 2570).
2012-05-01 15:37:43 +00:00
Joseph Myers
adfbc8ac9e
Fix x86 acos near 1 (bug 13942).
2012-04-30 18:56:39 +00:00
Joseph Myers
5ba3cc691c
Fix acos (-1) in round-downwards mode on x86 (bug 14034).
2012-04-30 09:38:06 +00:00
Joseph Myers
9568c0c225
Fix exp10 spurious overflows (bug 13924).
2012-04-30 09:37:01 +00:00
Andreas Schwab
ded5180a3b
Don't use long double *_finite functions if no long double math
2012-04-28 22:21:53 +02:00
Ryan S. Arnold
60c8fca7ab
Remove spurious '.' in math/libm-test.inc comment.
2012-04-27 12:36:46 -05:00
Ryan S. Arnold
a462cb6332
New test to expose erroneous negative sign on logb(1) (bug 887).
2012-04-27 10:47:39 -05:00
Joseph Myers
6ad3493e22
Fix fenv.h fallback returns (bug 14027).
2012-04-27 13:54:09 +00:00
Adhemerval Zanella
94e02fc410
Correct powerpc64 s_floorl edge cases (bug 13886).
...
[BZ #13886 ]
Remove powerpc64/fpu/s_floorl. Use fully correct ldbl-128bim/s_floorl.c.
2012-04-24 14:21:45 -05:00
Adhemerval Zanella
76da726532
Fix ilogb exception and errno (bug 6794)
...
[BZ #6794 ]
Following Joseph comments about bug 6794, here is a proposed fix. It turned out
to be a large fix mainly because I had to move some file along to follow libm
files/names conventions.
Basically I have added wrappers (w_ilogb.c, w_ilogbf.c, w_ilogbl.c) that now calls
the symbol '__ieee754_ilogb'. The wrappers checks for '__ieee754_ilogb' output and
set the errno and raise exceptions as expected.
The '__ieee754_ilogb' is implemented in sysdeps. I have moved the 's_ilogb[f|l]' files
to e_ilogb[f|l] and renamed the '__ilogb[f|l]' to '__ieee754_ilogb[f|l]'.
I also found out a bug in i386 and x86-64 assembly coded ilogb implementation where
it raises a FE_DIVBYZERO when argument is '0.0'. I corrected this issue as well.
Finally I added the errno and FE_INVALID tests for 0.0, NaN and +-InF argument. Tested
on i386, x86-64, ppc32 and ppc64.
2012-04-17 22:12:53 +02:00
Joseph Myers
8f9a2faee0
Fix spurious overflow exceptions from x86/x86_64 powl (bug 13872).
2012-04-09 22:32:45 +00:00
Joseph Myers
bcc8d6617b
Fix ctan, ctanh overflow (bug 11521).
2012-04-09 22:31:35 +00:00
Joseph Myers
d7dd945398
Fix missing overflow exceptions from pow (bug 13873).
2012-04-09 09:43:18 +00:00
Joseph Myers
c483f6b4a4
Fix x86 pow inaccuracy for large integer exponents (bug 706).
2012-04-09 09:42:05 +00:00
Joseph Myers
d2de7579f2
Do not allow overflow exception on exp underflow test (bug 13705).
2012-04-08 22:46:49 +00:00
Joseph Myers
d6270972f7
Fix pow of negative numbers to integer exponents (bugs 369, 2678, 3866).
2012-03-28 14:57:58 +00:00
Joseph Myers
41bf21a1e7
Avoid overflows from long double functions using __kernel_standard.
2012-03-28 09:32:12 +00:00
Joseph Myers
7c69cd143b
Fix cexp overflow (bug 13892).
2012-03-22 19:38:09 +00:00
Joseph Myers
48e44791e4
Fix exp2l inaccuracy (bug 13824).
2012-03-22 12:55:19 +00:00
Joseph Myers
1a4ac776eb
Remove inaccurate x86 cexp implementations (bug 13883).
2012-03-21 15:28:05 +00:00
Joseph Myers
0cb7efc517
Fix missing exp2 overflow exception (bug 13871).
2012-03-21 12:17:26 +00:00
Joseph Myers
2460d3aa21
Fix pow of zero and infinity to large powers.
2012-03-21 12:16:00 +00:00
Joseph Myers
c135cc1b5f
Test for overflow exceptions in libm-test.inc.
2012-03-20 10:58:04 +00:00
Joseph Myers
1897ad4432
Fix clog overflow/underflow (bug 13629).
2012-03-19 20:14:26 +00:00
Joseph Myers
7726d6a95d
Fix atan2 spurious exceptions (bug 11451).
2012-03-19 20:11:09 +00:00
Joseph Myers
c36e1d2369
Disable Bessel function TLOSS errors in POSIX mode.
2012-03-16 20:08:02 +00:00
Joseph Myers
11b90b9f50
Fix tan, tanl for large inputs.
2012-03-16 20:05:37 +00:00
Joseph Myers
8848d99dce
Implement ldbl-96 sinl / cosl / sincosl (bug 13851).
2012-03-16 12:30:05 +00:00
Andreas Jaeger
ea40808acd
Use 40 digits in tests
2012-03-15 18:02:02 +01:00
Andreas Jaeger
ee010c9e95
* sysdeps/i386/fpu/s_tanf.S: Delete so that i386 uses the
...
ieee754/flt-32 implementation for tan.
* math/libm-test.inc (tan_test): Add tests for large input.
* sysdeps/i386/fpu/libm-test-ulps: Update.
2012-03-15 17:34:24 +01:00
Andreas Jaeger
8c0247db32
[BZ #13852 ]
...
* sysdeps/i386/fpu/e_rem_pio2f.c: Delete so that i386 uses the
ieee754/flt-32 implementation.
* sysdeps/i386/fpu/k_rem_pio2f.c: Likewise.
* sysdeps/i386/fpu/s_cosf.S: Likewise.
* sysdeps/i386/fpu/s_sincosf.S: Likewise.
* sysdeps/i386/fpu/s_sinf.S: Likewise.
* math/libm-test.inc (cos_test): Enable some large input tests for
float as well
(sin_test): Likewise.
(sincos_test): Likewise.
* sysdeps/i386/fpu/libm-test-ulps: Update.
2012-03-15 17:23:43 +01:00
Andreas Jaeger
81c6415384
[BZ #13658 ]
...
* math/libm-test.inc (cos_test): Add more test cases.
(sin_test): Likewise.
(sincos_test): Likewise.
2012-03-15 16:25:57 +01:00
Andreas Jaeger
7bbfa5c6ec
[BZ #13837 ]
...
* math/libm-test.inc (cos_test): Add a test case for large input
value.
(sin_test): Likewise.
(sincos_test): Likewise.
2012-03-15 14:34:34 +01:00
Andreas Jaeger
ad6e0564b8
Cleanup formatting.
2012-03-15 14:14:39 +01:00
Andreas Jaeger
356a10ee3e
Merge branch 'master' into bug13658-branch
2012-03-14 16:36:17 +01:00
Joseph Myers
e456826d7a
Fix csqrt overflow/underflow (bug 13841).
2012-03-14 11:53:32 +00:00
Joseph Myers
aa4a2ae1db
Add tests for hypot overflow/underflow.
2012-03-14 01:12:05 +00:00
Richard Henderson
5f0a5daeee
Move math/math_private.h to sysdeps/generic/math_private.h.
...
This reverts commit 60d6f5a6f5
.
2012-03-09 16:12:17 -08:00
Andreas Jaeger
a20026128c
Add further tests
2012-03-08 10:44:32 +01:00
Joseph Myers
d1d3431a3a
Fix signs of zeros from casinh, cacosh etc. (bug 10716).
2012-03-07 15:15:19 +00:00
Andreas Jaeger
b35fe25ed9
[BZ #13658 ]
...
* sysdeps/x86_64/fpu/s_sincos.S: Delete.
* math/libm-test.inc (sincos_test): Add test for large input.
2012-03-07 14:51:39 +01:00
Ulrich Drepper
a4300c7a4d
Remove distribute variable from Makefiles
2012-03-07 05:17:13 -05:00
Joseph Myers
b7cd39e8f8
Fix pow in non-default rounding modes (bug 3976).
2012-03-05 12:22:46 +00:00
Joseph Myers
ca811b2256
Test cosh, sinh in non-default rounding modes (bug 3976).
2012-03-05 12:20:24 +00:00
Marek Polacek
bc957d531c
Remove oldish __GNUC_PREREQ.
2012-03-03 22:57:00 +01:00
Joseph Myers
804360ed83
Fix sin, cos, tan in non-default rounding modes (bug 3976).
2012-03-02 20:51:39 +00:00
Joseph Myers
a6d06d7b86
Fix scalbn, scalbln integer overflow.
2012-03-02 15:32:56 +00:00
Joseph Myers
28afd92dbd
Fix exp in non-default rounding modes (bug 3976).
2012-03-02 15:12:53 +00:00
Joseph Myers
7b1902cb3e
Improve erfc accuracy.
2012-03-01 21:15:38 +00:00
Joseph Myers
0fcad3e243
Add test for bug 5794 (incorrect expm1 overflow).
2012-02-29 20:49:20 +00:00
Joseph Myers
169d7f11ad
Move misplaced llround test and add lround test from bug 2561.
2012-02-29 01:55:42 +00:00
Joseph Myers
6cbeae4719
Fix nearbyintf rounding.
2012-02-22 13:03:40 +00:00
Joseph Myers
fe45ce09f3
Fix rintf rounding.
2012-02-22 13:01:20 +00:00
Aurelien Jarno
92221550d7
Use non-signaling floating-point comparisons in math functions.
2012-02-19 11:20:18 +01:00
Paul Eggert
59ba27a63a
Replace FSF snail mail address with URLs.
2012-02-09 23:18:22 +00:00
Marek Polacek
148cf100de
Add tst-CMPLX2 test.
2012-02-07 20:47:46 +01:00
Andreas Schwab
cfdc0dd7fa
Fix loss of precision in jn tests
2012-02-07 15:20:37 +01:00
Joseph Myers
65dc3b7504
Include <stdio.h> in math/tst-CMPLX.c.
2012-02-03 00:13:15 +00:00
Ulrich Drepper
56f6f6a240
Use -msse2avx option for x86-64 libm functions
2012-01-28 14:48:46 -05:00
Joseph Myers
8db2188281
Remove __STDC__ conditionals from libm.
2012-01-27 17:29:45 +00:00
Joseph Myers
7071ad79db
Remove __STDC__ conditionals from installed headers.
2012-01-26 20:49:22 +00:00
Ulrich Drepper
e58ef0f204
Add const attribute to fmin and fmax
2012-01-10 21:10:28 -05:00
Ulrich Drepper
a47a831ad8
Optimize ldexp and scalbn
2012-01-10 20:52:29 -05:00
Ulrich Drepper
1d5a644a55
Add test for CMPLX macros
2012-01-08 16:02:45 -05:00
Ulrich Drepper
8784a6db91
Fix typo in CMPLXL
2012-01-08 15:55:52 -05:00
Ulrich Drepper
ac097f5cd0
Define CMPLX, CMPLXF, CMPLXL
2012-01-08 10:07:26 -05:00
Ulrich Drepper
2119dcfacc
Static linking is always needed
2012-01-08 09:52:29 -05:00
Ulrich Drepper
a784e50247
Remove pre-ISO C support
...
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper
e3a851a21b
Use Kahan's formula in cacosh
2011-12-21 22:08:12 -05:00
Richard B. Kreckel
b27e24b874
Fix sign errr in some cacosh results
2011-12-21 21:01:29 -05:00
Marek Polacek
8ef4f244ff
Avoid warnings in __*_finite math function declarations with C++
2011-12-17 20:23:16 -05:00
Adhemerval Zanella
a1267ba1c6
Optimized nearbyint for PPC
2011-12-17 14:59:47 -05:00
Andreas Schwab
998832a466
Always provide declarations of long double math functions when !_LIBC
2011-11-04 15:16:11 +01:00
Ulrich Drepper
cb95113e30
Fix accuracy problem in generic sin
2011-10-29 14:08:56 -04:00
Andreas Schwab
f6ce9294b0
Make math_force_eval accept non-addressable arguments
2011-10-26 11:44:08 +02:00
Ulrich Drepper
af968f62f2
Optimize accurate 64-bit routines for FMA4 on x86-64
2011-10-24 20:19:17 -04:00
Ulrich Drepper
dbc36f153e
Merge branch 'master' of ssh://sourceware.org/git/glibc
2011-10-22 13:18:08 -04:00
Ulrich Drepper
77425c63e7
Add branch predictions to complex math code
2011-10-22 13:17:30 -04:00
Andreas Schwab
ee2aafe08e
Fix compilation due to __nan defines
2011-10-22 14:03:26 +02:00
Ulrich Drepper
bc62c2fb15
Optimization to some complex math functions
...
Also, change last reference to __sqrt into __sqrt to easily.
2011-10-22 00:32:39 -04:00
Ulrich Drepper
d9a8d0abcc
Use new internal libc_fe* interfaces in more functions
2011-10-18 15:11:31 -04:00
Ulrich Drepper
4855e3ddf5
Provide combined internal feholdexcept/fesetround interface
2011-10-18 09:59:04 -04:00
Ulrich Drepper
d38f1dba00
Start optimizing the use of the fenv interfaces in libm itself
2011-10-18 09:00:46 -04:00
Ulrich Drepper
bcf01e6d80
Optimize exp
...
Add __exp*_finite optimizations and rewrite some wrappers.
2011-10-15 20:22:59 -04:00
Andreas Jaeger
556a200797
Add parameter annotation to modf
2011-10-15 10:08:07 -04:00
Ulrich Drepper
0ac5ae2335
Optimize libm
...
libm is now somewhat integrated with gcc's -ffinite-math-only option
and lots of the wrapper functions have been optimized.
2011-10-12 11:27:51 -04:00
Ulrich Drepper
7edb55ce06
Optimize use of isnan, isinf, finite
2011-10-08 10:18:26 -04:00
Ulrich Drepper
9277c06437
Use private math_private.h in files in math/
2011-10-08 05:16:04 -04:00
Andreas Jaeger
bf5824458c
Fix remainder (NaN, 0)
2011-10-07 15:14:06 -04:00
Petr Baudis
1248c1c415
Fix jn precision
2011-09-09 22:16:10 -04:00
Paul Pluzhnikov
7f5517aa52
Fix lround() loses precision
2011-09-08 23:37:32 -04:00
Ulrich Drepper
f5f312ebe0
Fix whitespace
2011-05-18 19:52:42 -04:00
H.J. Lu
8db736347c
Fix typo in x86-64 powl
2011-05-18 19:50:48 -04:00
Erich Ritz
0e012e8734
Fix typo in comment.
2010-11-01 14:50:24 -04:00
Jakub Jelinek
7c08a05c5f
IEEE quad fmal fixes
2010-10-18 07:29:50 -04:00
Jakub Jelinek
3e692e0518
Implement fmal, some fma bugfixes
2010-10-15 15:26:06 -04:00
Jakub Jelinek
f3f7372de1
Fix some more dbl-64/s_fma.c issue
2010-10-15 15:25:14 -04:00
Jakub Jelinek
5e908464b9
Implement accurate fma.
2010-10-13 22:27:03 -04:00
Jakub Jelinek
9ff8d36f27
Correct implementation of fmaf.
2010-10-11 09:27:05 -04:00
Ulrich Drepper
a7b420eadc
Fix whitespaces.
2010-04-08 16:09:15 -07:00
Ulrich Drepper
88e236a627
Fix cproj implmentation.
2010-04-08 15:32:51 -07:00
David S. Miller
2e9337f58a
(INSERT_WORDS64): Fix argument order.
2010-03-03 05:58:09 -08:00
Andreas Schwab
7eb22e757e
Avoid PLT call to fegetenv on s390
2010-02-09 22:34:17 -08:00
Jakub Jelinek
98363ded87
Fix range checks in coshl.
2009-10-27 13:46:08 -07:00
Joseph Myers
e9f145cba8
Fix generic fdiml.
2009-08-25 15:48:06 -07:00
Ulrich Drepper
cf00cc00bc
Add ceil implementation for 64-bit machines.
...
On 64-bit machines we should not split doubles into two 32 bit
integer and handle the words separately. We have wide registers.
This patch implements a 64-bit ceil version. Ideally all other
functions will be converted over time.
2009-08-24 18:05:48 -07:00
Ulrich Drepper
f0c281e072
Fix overflow handling in fdim.
2009-08-24 12:06:55 -07:00
Ulrich Drepper
7b943af6cf
Define math_errhandling is possible.
2009-08-24 10:33:57 -07:00
Ulrich Drepper
78c4ef475d
Add support for x86-64 fma instruction.
...
Use it to implement fma and fmaf, if possible.
2009-07-29 15:26:06 -07:00
Andreas Schwab
ff6ff38db2
Remove redundant .gitignore files.
2009-05-16 10:18:34 +02:00
Ulrich Drepper
bbc5d74dd0
Add test for range error in expm1.
2009-05-15 19:53:09 -07:00
Jim Meyering
2e180a2622
rename each .cvsignore file to .gitignore
2009-05-15 18:13:37 +02:00
Ulrich Drepper
337c270829
* sysdeps/i386/fpu/s_tan.S: Set errno for ±Inf.
...
* sysdeps/i386/fpu/s_tanf.S: Likewise.
* sysdeps/i386/fpu/s_tanl.S: Likewise.
* sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
* sysdeps/ieee754/flt-32/s_tanf.c: Likewise.
* sysdeps/x86_64/fpu/s_tanl.S: Likewise.
* math/libm-test.inc: Add tests for errno after tan calls with
±Inf.
2009-04-26 05:42:49 +00:00
Ulrich Drepper
002a604fd6
* sysdeps/ieee754/k_standard.c (__kernel_standard): Use correct
...
errno value vor pow(+-0,neg).
* math/libm-test.inc (pow_test): Add tests for errno value for
pole errors.
2009-04-26 04:46:54 +00:00
Ulrich Drepper
7095366d1e
* math/w_fmod.c: Also handle x=±Inf as error.
...
* math/w_fmodf.c: Likewise.
* math/w_fmodl.c: Likewise.
* math/libm-test.inc (fmod_test): Add tests for errno after calls for
x=±Inf or y=0.
2009-04-26 03:43:02 +00:00
Ulrich Drepper
0c59a1963e
* sysdeps/i386/fpu/s_cos.S: Set errno for ±Inf.
...
* sysdeps/i386/fpu/s_cosf.S: Likewise.
* sysdeps/i386/fpu/s_cosl.S: Likewise.
* sysdeps/i386/fpu/s_sin.S: Likewise.
* sysdeps/i386/fpu/s_sinf.S: Likewise.
* sysdeps/i386/fpu/s_sinl.S: Likewise.
* sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
* sysdeps/ieee754/flt-32/s_cosf.c: Likewise.
* sysdeps/ieee754/flt-32/s_sinf.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_cosl.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_sinl.c: Likewise.
* sysdeps/x86_64/fpu/s_cosl.S: Likewise.
* sysdeps/x86_64/fpu/s_sinl.S: Likewise.
* math/libm-test.inc: Add tests for errno after sin/cos calls with
±Inf.
2009-04-26 01:04:54 +00:00
Ulrich Drepper
e971e76d8d
* sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors
...
for lgamma should se errno to ERANGE, not EDOM.
* math/libm-test.inc (lgamma_test): Check errno for pole errors.
2009-04-25 08:12:24 +00:00
Ulrich Drepper
acd44dbc7a
2008-10-24 Joseph Myers <joseph@codesourcery.com>
...
Ulrich Drepper <drepper@redhat.com>
* math/tgmath.h (__floating_type): Use __builtin_classify_type in
definition for GCC 3.1 and later.
2008-11-01 02:28:57 +00:00
Ulrich Drepper
8fb0af98d8
Work around braindead IBM128 long double format.
2008-05-22 19:59:10 +00:00
Ulrich Drepper
a7eb802f11
[BZ #3406 ]
...
2008-02-11 Joseph Myers <joseph@codesourcery.com>
[BZ #3406 ]
* sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value.
* math/libm-test.inc (exp_test): Test 88.72269439697265625.
2008-05-11 17:49:25 +00:00
Ulrich Drepper
246ec41199
* sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for
...
__fe_nomask_env.
* sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise.
* sysdeps/powerpc/bits/fenv.h: Make safe for C++.
* sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file.
* sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename
function from fegetexcept and make old name weak alias.
* include/fenv.h: Declare __fegetexcept.
* sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of
fegetexcept.
* sysdeps/powerpc/fpu/feenablxcpt.c: Likewise.
* sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call
to fetestexcept.
* sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl
instead of frexpl to avoid local PLT.
* math/s_significandl.c (__significandl): Use __ilogbl instead of
ilogbl to avoid local PLT.
* sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl
instead of ldexpl to avoid local PLT.
* sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
__roundl not roundl to avoid local PLT.
* sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid
local PLTs. Use __sincosl instead of separate sinl and cosl
calls.
* sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
2008-04-12 00:51:34 +00:00