aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic/math_private.h
AgeCommit message (Collapse)AuthorFilesLines
2013-05-08Improve tgamma accuracy (bugs 2546, 2560, 5159, 15426).Joseph Myers1-0/+12
2012-11-03Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796).Joseph Myers1-0/+16
2012-09-25Fix inaccuracy of clog, clog10 near |z| = 1 (bug 13629).Joseph Myers1-0/+7
2012-04-17Fix ilogb exception and errno (bug 6794)Adhemerval Zanella1-0/+3
[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-03-28Avoid overflows from long double functions using __kernel_standard.Joseph Myers1-0/+1
2012-03-19Create and use libc_feupdateenv_test.Richard Henderson1-0/+18
We can reduce the number of STMXCSR, and often we can avoid the call to __feraiseexcept.
2012-03-19Create and use SET_RESTORE_ROUND{,_NOEX,_53BIT}{,F,L}.Richard Henderson1-0/+69
2012-03-19Convert libc_feholdexcept et al from macros to inline functions.Richard Henderson1-21/+78
2012-03-19Make inline __isnan, __isinf_ns, __finite generic.Richard Henderson1-13/+26
For code generation to stay identical on x86_64, this requires that we define the fp word manipulation macros before including the generic header.
2012-03-14Implement and use libc_feholdexcept_setround_53bit and libc_feupdateenv_53bitAndreas Jaeger1-0/+5
so that double arithmetic in s_sin is done in 53 bit (without extend i386 double precision)
2012-03-09Move math/math_private.h to sysdeps/generic/math_private.h.Richard Henderson1-0/+392
This reverts commit 60d6f5a6f50d838bcb4240fcc0223cac445c6c83.