aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-query.cc
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2024-03-19 18:22:08 +0100
committerAldy Hernandez <aldyh@redhat.com>2024-04-28 21:03:00 +0200
commitc284f8d2d16ce9c29defce3329419ccc54605ad4 (patch)
treeb2033a83a6eabf935a3bf7665fb85100e2b9cb75 /gcc/value-query.cc
parent2caf7a50a6a9de80d2767d82b8cdb69d63469aaf (diff)
downloadgcc-c284f8d2d16ce9c29defce3329419ccc54605ad4.zip
gcc-c284f8d2d16ce9c29defce3329419ccc54605ad4.tar.gz
gcc-c284f8d2d16ce9c29defce3329419ccc54605ad4.tar.bz2
Make some integer specific ranges generic Value_Range's.
There are some irange uses that should be Value_Range, because they can be either integers or pointers. This will become a problem when prange comes live. gcc/ChangeLog: * tree-ssa-loop-split.cc (split_at_bb_p): Make int_range a Value_Range. * tree-ssa-strlen.cc (get_range): Same. * value-query.cc (range_query::get_tree_range): Handle both integers and pointers. * vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Make r0 and r1 Value_Range's.
Diffstat (limited to 'gcc/value-query.cc')
-rw-r--r--gcc/value-query.cc4
1 files changed, 1 insertions, 3 deletions
diff --git a/gcc/value-query.cc b/gcc/value-query.cc
index eda71dc..052b751 100644
--- a/gcc/value-query.cc
+++ b/gcc/value-query.cc
@@ -156,11 +156,9 @@ range_query::get_tree_range (vrange &r, tree expr, gimple *stmt)
{
case INTEGER_CST:
{
- irange &i = as_a <irange> (r);
if (TREE_OVERFLOW_P (expr))
expr = drop_tree_overflow (expr);
- wide_int w = wi::to_wide (expr);
- i.set (TREE_TYPE (expr), w, w);
+ r.set (expr, expr);
return true;
}