------- Additional Comments From uros at kss-loka dot si  2005-02-14 07:03 
-------
The patch for the problem described in description of this bug is actually at
http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01928.html. There is an
inconsistency in simplify_binary_operation(), as decribed in b).

Index: simplify-rtx.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/simplify-rtx.c,v
retrieving revision 1.204
diff -u -p -r1.204 simplify-rtx.c
--- simplify-rtx.c      9 Sep 2004 17:19:16 -0000       1.204
+++ simplify-rtx.c      20 Sep 2004 14:03:51 -0000
@@ -1309,7 +1309,10 @@ simplify_binary_operation (enum rtx_code
          REAL_ARITHMETIC (value, rtx_to_tree_code (code), f0, f1);
 
          value = real_value_truncate (mode, value);
-         return CONST_DOUBLE_FROM_REAL_VALUE (value, mode);
+         tem = CONST_DOUBLE_FROM_REAL_VALUE (value, mode);
+         if (MEM_P (op0) || MEM_P (op1))
+           tem = validize_mem (force_const_mem (mode, tem));
+         return tem;
        }
     }


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19150

Reply via email to