summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754
AgeCommit message (Collapse)AuthorFilesLines
2013-01-04Remove argument variable name from function declarationSiddhesh Poyarekar1-1/+1
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers196-201/+196
2013-01-02Fix values in __mpexp_twomm1Siddhesh Poyarekar1-8/+8
2013-01-02Split mantissa calculation loop and add branch predictionSiddhesh Poyarekar1-24/+43
2013-01-02Add assert for potential access beyond array bounds in m1npSiddhesh Poyarekar1-4/+17
The mpexp code has an access into m1np: for (i=n-1; i>0; i--,n--) { if (m1np[i][p]+m2>0) break; } which could break for p >= 18 or i >= 7. Fortunately this code is never called due to the way the exp function is implemented since values having exponent less than -55 return 1.0. Make sure that if it gets called in future, it is trapped.
2013-01-02Move more constants into static variablesSiddhesh Poyarekar4-22/+8
Code cleanup.
2013-01-01Add script to update copyright notices and reformat some to facilitate its use.Joseph Myers28-32/+28
2012-12-31Favour normal numbersSiddhesh Poyarekar1-4/+5
2012-12-29Demystify the magic number 134217729.0Siddhesh Poyarekar3-8/+10
The number 134217729.0 gets used in various places in e_pow.c but there is no explanation of what that number is. Add that explanation.
2012-12-28Remove unnecessary variable mptwoim1Siddhesh Poyarekar2-27/+3
Code cleanup.
2012-12-28Replace more constants with their valuesSiddhesh Poyarekar5-97/+61
Code cleanup.
2012-12-28Replace constants with preprocessor definesSiddhesh Poyarekar5-120/+28
libm Code cleanup.
2012-12-27Remove redundant __mpexp_nnSiddhesh Poyarekar2-28/+2
It's an array that stores integral float values of the offset.
2012-12-27Move mpone out to a global constSiddhesh Poyarekar7-68/+11
Code cleanup.
2012-12-05Include stdlib.h in sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c.Joseph Myers1-0/+1
2012-12-04Fix ldbl-128ibm "set but not used" warnings.Joseph Myers5-5/+9
2012-12-04Fix "conflicting types for built-in function" warnings from nldbl-*.c.Joseph Myers1-0/+99
2012-12-04Fix powl inaccuracy for ldbl-128ibm (bug 14914).Joseph Myers1-7/+7
2012-11-28Use hex float 64-bit values in ldbl-96 asinl (bug 14803).Joseph Myers1-3/+6
2012-11-22Fix ldbl-128ibm atanl spurious underflows (bug 14871).Joseph Myers1-0/+16
2012-11-22Fix sign of inexact zero results for ldbl-128ibm fmal.Joseph Myers1-1/+7
2012-11-22Fix ldbl-128ibm powl spurious underflows.Joseph Myers1-1/+5
2012-11-22Fix ldbl-128ibm hypotl internal underflows (bug 14869).Joseph Myers1-1/+1
2012-11-22Fix ldbl-128ibm hypotl inaccuracy for arguments with large ratio (bug 14868).Joseph Myers1-1/+1
2012-11-22Fix expm1l spurious underflows for ldbl-128ibm.Joseph Myers1-1/+1
2012-11-20Fix set-but-not-used warnings in ldbl-128 nearbyintl, rintl.Joseph Myers2-2/+2
2012-11-19Fix spurious underflows in ldbl-128 atan implementation.David S. Miller1-0/+17
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-18Correct tinyness handling in long-double and float y0/y1.David S. Miller4-2/+7
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-16Fix BZ #14811 for ldbl-128 too.David S. Miller1-1/+5
[BZ #14811] * sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Saturate nonzero exponents with absolute value below 0x1p-128 to +/- 0x1p-128.
2012-11-16Don't generate underflow for very small values in log1pl.David S. Miller1-0/+6
* sysdeps/ieee754/ldbl-128/s_log1pl.c (__log1pl): If xm1 is smaller than LDBL_EPSILON/2.0L, just return xm1.
2012-11-07Fix spurious underflows from pow with results close to 1 (bug 14811).Joseph Myers2-0/+8
2012-11-06Fix fma underflows with small x * y (bug 14793).Joseph Myers3-54/+81
2012-11-04Fix fma overflow results outside round-to-nearest mode (bug 14797).Joseph Myers3-12/+17
2012-11-03Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796).Joseph Myers4-8/+64
2012-11-01Fix fma (a, b, c) for small a * b (bugs 14784, 14785).Joseph Myers3-12/+98
2012-10-31Fix ldbl-128ibm atan2l for x near 1.Joseph Myers1-1/+2
2012-10-31Fix fma underflow exceptions in after-rounding edge cases.Joseph Myers3-0/+36
2012-10-30Fix fma missing underflows and bad results for some subnormal results (bugs ↵Joseph Myers3-42/+24
14152, 14783).
2012-10-09Add missing magic to GLIBC_PROVIDES.Roland McGrath1-120/+0
2012-10-01Fix sign of inexact zero return from fma (bug 14645).Joseph Myers3-0/+15
2012-09-29Fix sign of exact zero return from fma (bug 14638).Joseph Myers6-2/+34
2012-09-27Remove sysdeps/ieee754/ldbl-128/bits/huge_vall.h and let buildsSteve Ellcey1-50/+0
use bits/huge_vall.h instead. There is no longer any need for the special huge_vall.h file.
2012-09-25Fix inaccuracy of clog, clog10 near |z| = 1 (bug 13629).Joseph Myers6-0/+532
2012-09-25Add optimized sincosf for SSE2 for x86 and x86-64Liubov Dmitrieva1-1/+9
2012-09-03Add optimized sinf and cosf routines for x86 and x86-64Liubov Dmitrieva2-2/+20
* 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-08-17Quash warning in s_sincosl.Marek Polacek1-2/+2
2012-07-30Fix lots of bitrot for stub configurations.Roland McGrath1-0/+2
2012-07-25Set up errno properly for yn.Marek Polacek5-0/+20
2012-07-12Fix ynl return value with LDBL_MIN.Marek Polacek1-1/+2
2012-07-11Fix ctan, ctanh of subnormals in round-upwards mode (bug 14328).Adhemerval Zanella2-22/+50
IBM long double fixes and POWER ulps update.