summaryrefslogtreecommitdiff
path: root/src/mul.c
diff options
context:
space:
mode:
authorenge <enge@211d60ee-9f03-0410-a15a-8952a2c7a4e4>2011-02-23 16:06:54 +0000
committerenge <enge@211d60ee-9f03-0410-a15a-8952a2c7a4e4>2011-02-23 16:06:54 +0000
commit4cf5acde5bcaeaa861d1401960b5bcf855f51a8b (patch)
treef86acb8f3943c5949b460375fd0abcd2eb0b6d7d /src/mul.c
parentaa8f22696d5a5131c0edccbbbbf6d671c0906b07 (diff)
downloadmpc-4cf5acde5bcaeaa861d1401960b5bcf855f51a8b.tar.gz
mul.c: bug with underflow
mul.dat: added test discovering the bug git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@952 211d60ee-9f03-0410-a15a-8952a2c7a4e4
Diffstat (limited to 'src/mul.c')
-rw-r--r--src/mul.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mul.c b/src/mul.c
index 5a76601..bf8db43 100644
--- a/src/mul.c
+++ b/src/mul.c
@@ -306,11 +306,11 @@ mpfr_fmam (mpfr_ptr z, mpfr_srcptr a, mpfr_srcptr b, mpfr_srcptr c,
mpfr_set_zero (z, signv);
inex = -signv;
}
- else /* both exponents are equal */ if (mpfr_cmp (u, v) > 0) {
+ else /* both exponents are equal */ if (mpfr_cmpabs (u, v) > 0) {
mpfr_set_zero (z, signu);
inex = -signu;
}
- else if (mpfr_cmp (u, v) < 0) {
+ else if (mpfr_cmpabs (u, v) < 0) {
mpfr_set_zero (z, signv);
inex = -signv;
}