2009-03-30 Paolo Bonzini <bonzini@gnu.org>
authorbonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Mar 2009 08:20:32 +0000 (08:20 +0000)
committerbonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Mar 2009 08:20:32 +0000 (08:20 +0000)
        * fold-const.c (const_binop, fold_convert_const_real_from_fixed,
        fold_convert_const_fixed_from_fixed,
        fold_convert_const_fixed_from_int,
        fold_convert_const_fixed_from_real, fold_negate_const): Do not
        set TREE_CONSTANT_OVERFLOW.
        * tree.def: Remove mention of TREE_CONSTANT_OVERFLOW.
        * tree.h (TREE_CONSTANT_OVERFLOW): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145281 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/fold-const.c
gcc/tree.def
gcc/tree.h

index 77ba264..e4b3d9e 100644 (file)
@@ -1,3 +1,13 @@
+2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
+
+       * fold-const.c (const_binop, fold_convert_const_real_from_fixed,
+       fold_convert_const_fixed_from_fixed,
+       fold_convert_const_fixed_from_int,
+       fold_convert_const_fixed_from_real, fold_negate_const): Do not
+       set TREE_CONSTANT_OVERFLOW.
+       * tree.def: Remove mention of TREE_CONSTANT_OVERFLOW.
+       * tree.h (TREE_CONSTANT_OVERFLOW): Delete.
+
 2009-03-30  Ira Rosen  <irar@il.ibm.com>
 
        * tree-vect-loop-manip.c: New file.
index a68b7b8..a56e885 100644 (file)
@@ -1932,12 +1932,7 @@ const_binop (enum tree_code code, tree arg1, tree arg2, int notrunc)
       t = build_fixed (type, result);
       /* Propagate overflow flags.  */
       if (overflow_p | TREE_OVERFLOW (arg1) | TREE_OVERFLOW (arg2))
-       {
-         TREE_OVERFLOW (t) = 1;
-         TREE_CONSTANT_OVERFLOW (t) = 1;
-       }
-      else if (TREE_CONSTANT_OVERFLOW (arg1) | TREE_CONSTANT_OVERFLOW (arg2))
-       TREE_CONSTANT_OVERFLOW (t) = 1;
+       TREE_OVERFLOW (t) = 1;
       return t;
     }
 
@@ -2304,8 +2299,6 @@ fold_convert_const_real_from_fixed (tree type, const_tree arg1)
   t = build_real (type, value);
 
   TREE_OVERFLOW (t) = TREE_OVERFLOW (arg1);
-  TREE_CONSTANT_OVERFLOW (t)
-    = TREE_OVERFLOW (t) | TREE_CONSTANT_OVERFLOW (arg1);
   return t;
 }
 
@@ -2325,12 +2318,7 @@ fold_convert_const_fixed_from_fixed (tree type, const_tree arg1)
 
   /* Propagate overflow flags.  */
   if (overflow_p | TREE_OVERFLOW (arg1))
-    {
-      TREE_OVERFLOW (t) = 1;
-      TREE_CONSTANT_OVERFLOW (t) = 1;
-    }
-  else if (TREE_CONSTANT_OVERFLOW (arg1))
-    TREE_CONSTANT_OVERFLOW (t) = 1;
+    TREE_OVERFLOW (t) = 1;
   return t;
 }
 
@@ -2352,12 +2340,7 @@ fold_convert_const_fixed_from_int (tree type, const_tree arg1)
 
   /* Propagate overflow flags.  */
   if (overflow_p | TREE_OVERFLOW (arg1))
-    {
-      TREE_OVERFLOW (t) = 1;
-      TREE_CONSTANT_OVERFLOW (t) = 1;
-    }
-  else if (TREE_CONSTANT_OVERFLOW (arg1))
-    TREE_CONSTANT_OVERFLOW (t) = 1;
+    TREE_OVERFLOW (t) = 1;
   return t;
 }
 
@@ -2378,12 +2361,7 @@ fold_convert_const_fixed_from_real (tree type, const_tree arg1)
 
   /* Propagate overflow flags.  */
   if (overflow_p | TREE_OVERFLOW (arg1))
-    {
-      TREE_OVERFLOW (t) = 1;
-      TREE_CONSTANT_OVERFLOW (t) = 1;
-    }
-  else if (TREE_CONSTANT_OVERFLOW (arg1))
-    TREE_CONSTANT_OVERFLOW (t) = 1;
+    TREE_OVERFLOW (t) = 1;
   return t;
 }
 
@@ -15228,12 +15206,7 @@ fold_negate_const (tree arg0, tree type)
        t = build_fixed (type, f);
        /* Propagate overflow flags.  */
        if (overflow_p | TREE_OVERFLOW (arg0))
-         {
-           TREE_OVERFLOW (t) = 1;
-           TREE_CONSTANT_OVERFLOW (t) = 1;
-         }
-       else if (TREE_CONSTANT_OVERFLOW (arg0))
-         TREE_CONSTANT_OVERFLOW (t) = 1;
+         TREE_OVERFLOW (t) = 1;
        break;
       }
 
index 21f4db0..a8836c9 100644 (file)
@@ -268,9 +268,8 @@ DEFTREECODE (LANG_TYPE, "lang_type", tcc_type, 0)
 /* Contents are in TREE_INT_CST_LOW and TREE_INT_CST_HIGH fields,
    32 bits each, giving us a 64 bit constant capability.  INTEGER_CST
    nodes can be shared, and therefore should be considered read only.
-   They should be copied, before setting a flag such as
-   TREE_OVERFLOW.  If an INTEGER_CST has TREE_OVERFLOW or
-   TREE_CONSTANT_OVERFLOW already set, it is known to be unique.
+   They should be copied, before setting a flag such as TREE_OVERFLOW.
+   If an INTEGER_CST has TREE_OVERFLOW already set, it is known to be unique.
    INTEGER_CST nodes are created for the integral types, for pointer
    types and for vector and float types in some circumstances.  */
 DEFTREECODE (INTEGER_CST, "integer_cst", tcc_constant, 0)
index dbd0faa..2efc978 100644 (file)
@@ -1186,9 +1186,6 @@ extern void omp_clause_range_check_failed (const_tree, const char *, int,
 
 #define TREE_OVERFLOW(NODE) (CST_CHECK (NODE)->base.public_flag)
 
-/* ??? This is an obsolete synonym for TREE_OVERFLOW.  */
-#define TREE_CONSTANT_OVERFLOW(NODE) TREE_OVERFLOW(NODE)
-
 /* TREE_OVERFLOW can only be true for EXPR of CONSTANT_CLASS_P.  */
 
 #define TREE_OVERFLOW_P(EXPR) \