aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2009-03-30 08:20:32 +0000
committerPaolo Bonzini <bonzini@gcc.gnu.org>2009-03-30 08:20:32 +0000
commit28ddeea115cc0a6e9eddfae00905a9fb739f2503 (patch)
tree5b140417cc664479b9a3f420cad41ed2b1c99243 /gcc/fold-const.c
parentebfd146af752ce6aa298f866e36f9a7e66e32ec5 (diff)
downloadgcc-28ddeea115cc0a6e9eddfae00905a9fb739f2503.zip
gcc-28ddeea115cc0a6e9eddfae00905a9fb739f2503.tar.gz
gcc-28ddeea115cc0a6e9eddfae00905a9fb739f2503.tar.bz2
fold-const.c (const_binop, [...]): Do not set TREE_CONSTANT_OVERFLOW.
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. From-SVN: r145281
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r--gcc/fold-const.c37
1 files changed, 5 insertions, 32 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index a68b7b8..a56e885 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -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;
}