]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
fold-const.c (fold_real_zero_addition_p): Don't fold a zero addition in the presence...
authorRoger Sayle <sayle@gcc.gnu.org>
Wed, 19 Feb 2003 22:59:33 +0000 (22:59 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Wed, 19 Feb 2003 22:59:33 +0000 (22:59 +0000)
* fold-const.c (fold_real_zero_addition_p): Don't fold a zero
addition in the presence of signaling NaNs.

From-SVN: r63133

gcc/ChangeLog
gcc/fold-const.c

index 26807a1c89921a4d5e3b5edd59e42e8ef85b8ef6..da21d117faee17aedb017f9d0d80a42e3d2922c3 100644 (file)
@@ -1,3 +1,8 @@
+2003-02-19  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (fold_real_zero_addition_p): Don't fold a zero
+       addition in the presence of signaling NaNs.
+
 2003-02-19  Krister Walfridsson  <cato@df.lth.se>
 
        * tm.texi (INIT_CUMULATIVE_ARGS): Fix typo.
@@ -109,9 +114,10 @@ Tue Feb 18 23:50:59 CET 2003  Jan Hubicka  <jh@suse.cz>
        (cgraph_expand_function): Rewrite.
 
 2003-02-18  Matt Austern <austern@apple.com>
+
        * toplev.c, langhooks.c, langhooks-def.h: Move
        write_global_declarations from toplev.c to langhooks.c. 
-       
+
 2003-02-18  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/h8300/h8300.c (general_operand_src): Always check
@@ -168,8 +174,8 @@ Tue Feb 18 23:50:59 CET 2003  Jan Hubicka  <jh@suse.cz>
 
 Tue Feb 18 20:15:54 2003  J"orn Rennecke <joern.rennecke@superh.com>
 
-       * sh.c (calc_live_regs): Also check GET_CODE when checking if initial value
-       for PR_REG is still the PR_REG register.
+       * sh.c (calc_live_regs): Also check GET_CODE when checking if
+       initial value for PR_REG is still the PR_REG register.
 
 2003-02-18  Jim Wilson  <wilson@redhat.com>
 
index 5dfa1e413ec74d2eb421eba0967b5682714fe485..6b50a86a097b9aa907bb549fc0405f01539467f1 100644 (file)
@@ -4642,6 +4642,10 @@ fold_real_zero_addition_p (type, addend, negate)
   if (!real_zerop (addend))
     return false;
 
+  /* Don't allow the fold with -fsignaling-nans.  */
+  if (HONOR_SNANS (TYPE_MODE (type)))
+    return false;
+
   /* Allow the fold if zeros aren't signed, or their sign isn't important.  */
   if (!HONOR_SIGNED_ZEROS (TYPE_MODE (type)))
     return true;