Correct sign handling when dividing zero or infinity by something
authorIan Lance Taylor <ian@gcc.gnu.org>
Fri, 17 May 1996 17:09:54 +0000 (17:09 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Fri, 17 May 1996 17:09:54 +0000 (17:09 +0000)
From-SVN: r12009

gcc/config/fp-bit.c

index eb160e8afc747dcab2429b9a48eed67a848aa114..7381ae80b27c8817b2aaccc853c0485eaba2b3ac 100644 (file)
@@ -2,7 +2,7 @@
    the floating point routines in libgcc1.c for targets without hardware
    floating point.  */
 
-/* Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+/* Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc.
 
 This file is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License as published by the
@@ -944,13 +944,15 @@ _fpdiv_parts (fp_number_type * a,
     {
       return b;
     }
+
+  a->sign = a->sign ^ b->sign;
+
   if (isinf (a) || iszero (a))
     {
       if (a->class == b->class)
        return nan ();
       return a;
     }
-  a->sign = a->sign ^ b->sign;
 
   if (isinf (b))
     {