aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1994-12-19 12:48:30 -0800
committerJim Wilson <wilson@gcc.gnu.org>1994-12-19 12:48:30 -0800
commitc211b99198b0a7d1664eaa4439eaf021cf5a28a3 (patch)
tree59afd8b3e0fdbf5d4ed37d21beacf6d6a5a11826 /gcc
parent667a4593fc3d98b4d4ca7759ba2f291a8c974d03 (diff)
downloadgcc-c211b99198b0a7d1664eaa4439eaf021cf5a28a3.zip
gcc-c211b99198b0a7d1664eaa4439eaf021cf5a28a3.tar.gz
gcc-c211b99198b0a7d1664eaa4439eaf021cf5a28a3.tar.bz2
(fpadd_parts): Adding infinities with opposite signs yields a NaN.
From-SVN: r8667
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/fp-bit.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/config/fp-bit.c b/gcc/config/fp-bit.c
index 373c251..9f2d279 100644
--- a/gcc/config/fp-bit.c
+++ b/gcc/config/fp-bit.c
@@ -485,6 +485,9 @@ _fpadd_parts (fp_number_type * a,
}
if (isinf (a))
{
+ /* Adding infinities with opposite signs yields a NaN. */
+ if (isinf (b) && a->sign != b->sign)
+ return nan ();
return a;
}
if (isinf (b))