aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2021-06-25 15:31:39 -0400
committerAndrew MacLeod <amacleod@redhat.com>2021-06-29 14:57:01 -0400
commit604dce2d74d3417970e23e7ad38322d1adbca2e2 (patch)
treec87a1bfb4240e5cc621b88615a0526e937e2d22b
parenta7e655ae4016eaf04e261ff32fc67a14ebb0e329 (diff)
downloadgcc-604dce2d74d3417970e23e7ad38322d1adbca2e2.zip
gcc-604dce2d74d3417970e23e7ad38322d1adbca2e2.tar.gz
gcc-604dce2d74d3417970e23e7ad38322d1adbca2e2.tar.bz2
Allow PHIs to pick up global values.
We can also apply known global values to PHI nodes in EVRP. * value-query.cc (gimple_range_global): Allow phis.
-rw-r--r--gcc/value-query.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/value-query.cc b/gcc/value-query.cc
index 17dfdb1..730a214 100644
--- a/gcc/value-query.cc
+++ b/gcc/value-query.cc
@@ -419,7 +419,8 @@ gimple_range_global (tree name)
gcc_checking_assert (gimple_range_ssa_p (name));
tree type = TREE_TYPE (name);
- if (SSA_NAME_IS_DEFAULT_DEF (name) || (cfun && cfun->after_inlining))
+ if (SSA_NAME_IS_DEFAULT_DEF (name) || (cfun && cfun->after_inlining)
+ || is_a<gphi *> (SSA_NAME_DEF_STMT (name)))
{
value_range vr;
get_range_global (vr, name);