diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-06 13:08:06 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-06 13:08:06 +0000 |
commit | 4a8f88ff0c38b6acf5d0c6d5c43c5a6071eeb2ff (patch) | |
tree | 053822df465eb3c1f6c53f1d007303a4f3ddaef0 /gcc/gimplify.c | |
parent | fc3eff8854861fcd70d33d26095b17fe456fae31 (diff) | |
download | gcc-4a8f88ff0c38b6acf5d0c6d5c43c5a6071eeb2ff.tar.gz |
2013-11-06 Richard Biener <rguenther@suse.de>
* tree.c (drop_tree_overflow): New function.
* tree.h (drop_tree_overflow): Declare.
* gimplify.c (gimplify_expr): Drop TREE_OVERFLOW.
* tree-vrp.c (range_int_cst_singleton_p): Use
is_overflow_infinity instead of testing TREE_OVERFLOW.
(extract_range_from_assert): Likewise.
(zero_nonzero_bits_from_vr): Likewise.
(extract_range_basic): Likewise.
(register_new_assert_for): Use drop_tree_overflow.
(vrp_visit_phi_node): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204454 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r-- | gcc/gimplify.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 4df9ed49e96..721e8fb6002 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -7897,6 +7897,10 @@ gimplify_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p, case STRING_CST: case COMPLEX_CST: case VECTOR_CST: + /* Drop the overflow flag on constants, we do not want + that in the GIMPLE IL. */ + if (TREE_OVERFLOW_P (*expr_p)) + *expr_p = drop_tree_overflow (*expr_p); ret = GS_ALL_DONE; break; |