aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2015-02-02 15:01:28 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2015-02-02 15:01:28 +0000
commit7dd1f7ace308f5452d97b09e4a42db84c4eb6999 (patch)
treeb48c79b62132866824fbe2548effca729c729775 /gcc
parent56d1b78a4ac49ff3f526222369001f1d717e483e (diff)
downloadgcc-7dd1f7ace308f5452d97b09e4a42db84c4eb6999.zip
gcc-7dd1f7ace308f5452d97b09e4a42db84c4eb6999.tar.gz
gcc-7dd1f7ace308f5452d97b09e4a42db84c4eb6999.tar.bz2
tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs.
2015-02-02 Richard Biener <rguenther@suse.de> * tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs. * tree-vrp.c (vrp_valueize_1): Likewise. From-SVN: r220346
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-ccp.c3
-rw-r--r--gcc/tree-vrp.c3
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6453686..fc4ecb3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-02-02 Richard Biener <rguenther@suse.de>
+
+ * tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs.
+ * tree-vrp.c (vrp_valueize_1): Likewise.
+
2015-02-02 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.c (rs6000_call_aix): Use unspec rather
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index a576bd1..d45a3ff 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -1145,7 +1145,8 @@ valueize_op_1 (tree op)
this SSA edge as the SSA propagator does not necessarily
re-visit the use. */
gimple def_stmt = SSA_NAME_DEF_STMT (op);
- if (prop_simulate_again_p (def_stmt))
+ if (!gimple_nop_p (def_stmt)
+ && prop_simulate_again_p (def_stmt))
return NULL_TREE;
tree tem = get_constant_value (op);
if (tem)
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index ef1c21d..dad1830 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -7096,7 +7096,8 @@ vrp_valueize_1 (tree name)
this SSA edge as the SSA propagator does not necessarily
re-visit the use. */
gimple def_stmt = SSA_NAME_DEF_STMT (name);
- if (prop_simulate_again_p (def_stmt))
+ if (!gimple_nop_p (def_stmt)
+ && prop_simulate_again_p (def_stmt))
return NULL_TREE;
value_range_t *vr = get_value_range (name);
if (range_int_cst_singleton_p (vr))