about summary refs log tree commit diff
path: root/sysdeps/x86_64/fpu
Commit message (Collapse)AuthorAgeFilesLines
* Fix powl inaccuracy for x86_64 and x86 (bug 13881).Joseph Myers2012-11-282-30/+26
|
* Fix spurious underflows in ldbl-128 atan implementation.David S. Miller2012-11-191-0/+3
| | | | | | | | | | 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.
* Correct tinyness handling in long-double and float y0/y1.David S. Miller2012-11-181-0/+35
| | | | | | | | | | | | | | | | | 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.
* Fix spurious underflows from pow with results close to 1 (bug 14811).Joseph Myers2012-11-071-2/+21
|
* Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796).Joseph Myers2012-11-031-1/+2
|
* Update x86-64 ULPsMarkus Trippelsdorf2012-09-261-12/+19
|
* Fix inaccuracy of clog, clog10 near |z| = 1 (bug 13629).Joseph Myers2012-09-251-4/+121
|
* Add optimized sincosf for SSE2 for x86 and x86-64Liubov Dmitrieva2012-09-252-18/+582
|
* Fix x86 SSE cosf, sinf issuesLiubov Dmitrieva2012-09-102-29/+16
| | | | | | | | | | * sysdeps/i386/i686/fpu/multiarch/s_sinf-sse2.S: Fix unwind info if defined PIC. Fix special cases description. * sysdeps/i386/i686/fpu/multiarch/s_cosf-sse2.S: Likewise. * sysdeps/x86_64/fpu/s_sinf.S: Fix special cases description, fix DP_HI_MASK entry. * sysdeps/x86_64/fpu/s_cosf.S: Likewise.
* Update libm-test-ulpsAndreas Jaeger2012-09-031-0/+6
|
* Add optimized sinf and cosf routines for x86 and x86-64Liubov Dmitrieva2012-09-033-4/+1124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* Update x86-64 ULPsMarkus Trippelsdorf2012-08-131-0/+3
| | | | | The recent clog and clog10 fixes are causing some failing tests on my AMD64 CPU.
* Get rid of ASM_TYPE_DIRECTIVE{,_PREFIX}.Marek Polacek2012-08-029-37/+37
|
* Improve clog, clog10 handling of values with real or imaginary part slightly ↵Joseph Myers2012-07-311-2/+69
| | | | above 1 (bug 13629).
* Improve clog, clog10 handling of values with real or imaginary part 1 (bug ↵Joseph Myers2012-07-261-0/+57
| | | | 13629).
* Fix clog, clog10 spurious underflow exceptions (bug 14337).Joseph Myers2012-07-091-0/+152
|
* Fix expm1 spurious underflow exceptions (bug 6778).Joseph Myers2012-07-062-14/+31
|
* Fix csqrt underflow (bugs 14157, 14331).Joseph Myers2012-07-051-0/+30
|
* Fix ctan, ctanh of subnormals in round-upwards mode (bug 14328).Joseph Myers2012-07-041-0/+278
|
* Use i386 bits/mathinline.h for i386 and x86_64H.J. Lu2012-06-151-289/+0
|
* Use x86_64 fpu/bits/fenv.h for i386 and x86_64H.J. Lu2012-06-062-141/+1
|
* Check __SSE_MATH__ in x86_64 feraiseexceptH.J. Lu2012-06-061-1/+11
|
* Don't include exceptions in libm-test-ulps test names.Joseph Myers2012-05-241-17/+17
|
* Test underflow exceptions in libm-test.inc.Joseph Myers2012-05-241-12/+12
|
* Fix ccos, csin, ccosh, csinh overflows (bug 14123).Joseph Myers2012-05-191-0/+114
|
* Do not provide inlines for GCC build-in functionsAndreas Jaeger2012-05-181-2/+5
|
* Add volatiles for x86-64 bits/mathinline.hAndreas Jaeger2012-05-091-8/+40
| | | | | | | | | | [BZ #14053] GCC 4.7 might remove consecutive calls to e.g. lrintf since the assembler instructions are the same and GCC does not know that the result is different depending on the rounding mode. For SSE instructions, the control register is not available so there is no way to inform GCC about this. Therefore the asms are marked as volatile.
* Fix x86/x86_64 expm1l inaccuracy and exceptions (bugs 13885, 13923).Joseph Myers2012-05-073-131/+71
|
* Fix exp10 inaccuracy and exceptions (bugs 13884, 13914).Joseph Myers2012-05-063-8/+40
|
* Update x86-64 libm-test-ulpsAndreas Jaeger2012-05-061-0/+12
|
* Fix missing exceptions from exp (bugs 13787, 13922, 14036).Joseph Myers2012-05-051-1/+18
|
* Use .S sources for x86/x86_64 expl.Joseph Myers2012-05-052-1/+89
|
* Fix x86 acos near 1 (bug 13942).Joseph Myers2012-04-301-0/+12
|
* Fix acos (-1) in round-downwards mode on x86 (bug 14034).Joseph Myers2012-04-301-0/+158
|
* Update sysdeps/x86_64/fpu/libm-test-ulpsMarkus Trippelsdorf2012-04-211-0/+6
| | | | | [BZ #13927] * sysdeps/x86_64/fpu/libm-test-ulps: Update.
* Remove useless __ilogb*_finite aliasesAndreas Schwab2012-04-181-1/+0
|
* Fix ilogb exception and errno (bug 6794)Adhemerval Zanella2012-04-171-3/+8
| | | | | | | | | | | | | | | | | | | | [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.
* Fix spurious overflow exceptions from x86/x86_64 powl (bug 13872).Joseph Myers2012-04-091-12/+19
|
* Fix ctan, ctanh overflow (bug 11521).Joseph Myers2012-04-091-12/+70
|
* Fix x86 pow inaccuracy for large integer exponents (bug 706).Joseph Myers2012-04-091-0/+15
|
* Fix pow of negative numbers to integer exponents (bugs 369, 2678, 3866).Joseph Myers2012-03-281-4/+43
|
* Fix cexp overflow (bug 13892).Joseph Myers2012-03-221-2/+32
|
* Disable use of FMA instructions in branredAndreas Schwab2012-03-214-8/+1
|
* Remove inaccurate x86 cexp implementations (bug 13883).Joseph Myers2012-03-211-0/+22
|
* Fix pow of zero and infinity to large powers.Joseph Myers2012-03-211-0/+41
|
* Check __x86_64__ instead of __WORDSIZE in mathinline.hH.J. Lu2012-03-201-5/+3
|
* Check __x86_64__ instead of __WORDSIZE for fenv_tH.J. Lu2012-03-191-4/+1
|
* Use int64_t in x86_64/fpu/math_private.hH.J. Lu2012-03-191-2/+2
|
* Fix clog overflow/underflow (bug 13629).Joseph Myers2012-03-191-0/+67
|
* Optimize private 387 fenv access; share code between i386 and x86_64.Richard Henderson2012-03-191-119/+1
|