summaryrefslogtreecommitdiff
path: root/fma.c
diff options
context:
space:
mode:
authorvlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2008-07-31 09:59:53 +0000
committervlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2008-07-31 09:59:53 +0000
commit74b1f0182573d1c22fb3cc4c9d545d45a6c4bd60 (patch)
tree7af7038764402d82888c1e934fef12c50c9d653a /fma.c
parentcbe6bebfc96f3b32f03fbf0857ae9fdf3fc5fbec (diff)
downloadmpfr-74b1f0182573d1c22fb3cc4c9d545d45a6c4bd60.tar.gz
fma.c, fms.c: added a comment about apparently incorrect scaling.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5468 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'fma.c')
-rw-r--r--fma.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fma.c b/fma.c
index a8f617e84..726d77d56 100644
--- a/fma.c
+++ b/fma.c
@@ -272,6 +272,9 @@ mpfr_fma (mpfr_ptr s, mpfr_srcptr x, mpfr_srcptr y, mpfr_srcptr z,
MPFR_ASSERTN (! MPFR_OVERFLOW (flags)); /* TODO... */
MPFR_ASSERTN (! MPFR_UNDERFLOW (flags)); /* not possible */
inex2 = mpfr_div_2ui (s, s, scale, GMP_RNDN);
+ /* FIXME: this seems incorrect. GMP_RNDN -> rnd_mode?
+ Also, handle the double rounding case:
+ s / 2^scale = 2^(emin - 2) in GMP_RNDN. */
if (inex2) /* underflow */
inexact = inex2;
}