aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/value-range.cc12
-rw-r--r--gcc/value-range.h1
2 files changed, 3 insertions, 10 deletions
diff --git a/gcc/value-range.cc b/gcc/value-range.cc
index da90981..f7c3e7a 100644
--- a/gcc/value-range.cc
+++ b/gcc/value-range.cc
@@ -979,7 +979,9 @@ irange::copy_legacy_to_multi_range (const irange &src)
set_varying (src.type ());
else
{
- if (range_has_numeric_bounds_p (&src))
+ if (!src.undefined_p ()
+ && TREE_CODE (src.min ()) == INTEGER_CST
+ && TREE_CODE (src.max ()) == INTEGER_CST)
set (src.min (), src.max (), src.kind ());
else
{
@@ -3068,14 +3070,6 @@ ranges_from_anti_range (const value_range *ar,
return !vr0->undefined_p ();
}
-bool
-range_has_numeric_bounds_p (const irange *vr)
-{
- return (!vr->undefined_p ()
- && TREE_CODE (vr->min ()) == INTEGER_CST
- && TREE_CODE (vr->max ()) == INTEGER_CST);
-}
-
/* Return whether VAL is equal to the maximum value of its type.
We can't do a simple equality comparison with TYPE_MAX_VALUE because
C typedefs and Ada subtypes can produce types whose TYPE_MAX_VALUE
diff --git a/gcc/value-range.h b/gcc/value-range.h
index c1474a7..b47540d 100644
--- a/gcc/value-range.h
+++ b/gcc/value-range.h
@@ -669,7 +669,6 @@ irange::legacy_mode_p () const
return m_max_ranges == 1;
}
-extern bool range_has_numeric_bounds_p (const irange *);
extern bool ranges_from_anti_range (const value_range *,
value_range *, value_range *);
extern value_range_kind get_legacy_range (const irange &, tree &min, tree &max);