diff options
author | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-30 08:20:32 +0000 |
---|---|---|
committer | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-30 08:20:32 +0000 |
commit | 62126877111f8eff5299bc4f206645760ad858b6 (patch) | |
tree | 5b140417cc664479b9a3f420cad41ed2b1c99243 /gcc/fold-const.c | |
parent | fb85abff92ed1f8489e517192319b5394c0ee529 (diff) | |
download | gcc-62126877111f8eff5299bc4f206645760ad858b6.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145281 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 37 |
1 files changed, 5 insertions, 32 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index a68b7b8637d..a56e885fbf8 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; } |