summaryrefslogtreecommitdiff
path: root/lib/fmodl.c
Commit message (Collapse)AuthorAgeFilesLines
* fmod, fmodl: Fix computation for large quotients x / y.Bruno Haible2012-03-041-51/+2
| | | | | | | | | | | | * lib/fmod.c: Completely rewritten. * lib/fmodl.c (fmodl): Use implementation of fmod.c with USE_LONG_DOUBLE. * modules/fmod (Depends-on): Add isfinite, signbit, fabs, frexp, ldexp, isnand. Remove fma. * modules/fmodl (Depends-on): Add float, isfinite, signbit, fabsl, frexpl, ldexpl, isnanl. Remove fma. * m4/fmod.m4 (gl_FUNC_FMOD): Update computation of FMOD_LIBM. * m4/fmodl.m4 (gl_FUNC_FMODL): Update computation of FMODL_LIBM.
* fmodl-ieee: Fix test failures.Bruno Haible2012-02-271-34/+39
| | | | | * lib/fmodl.c (fmodl): Treat Inf specially. * modules/fmodl (Depends-on): Add isinf.
* fmodl, remainder*: Avoid wrong results due to rounding errors.Bruno Haible2012-02-261-2/+42
| | | | | | | | * lib/fmodl.c (fmodl): Correct the result if it is not within the expected bounds. * lib/remainderf.c (remainderf): Likewise. * lib/remainder.c (remainder): Likewise. * lib/remainderl.c (remainderl): Likewise.
* New module 'fmodl'.Bruno Haible2012-02-251-0/+39
* lib/math.in.h (fmodl): New declaration. * lib/fmodl.c: New file. * m4/fmodl.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether fmodl is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_FMODL, HAVE_FMODL, REPLACE_FMODL. * modules/math (Makefile.am): Substitute GNULIB_FMODL, HAVE_FMODL, REPLACE_FMODL. * modules/fmodl: New file. * doc/posix-functions/fmodl.texi: Mention the new module.