+2018-11-08 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-vrp.c (value_range::check): Do not access internals
+ directly.
+ (value_range::singleton_p): Same.
+ (value_range::type): Same.
+ (vrp_finalize): Use value_range API.
+
2018-11-08 Aldy Hernandez <aldyh@redhat.com>
* tree-vrp.c (may_contain_p): Do not access m_min/m_max directly.
}
case VR_UNDEFINED:
case VR_VARYING:
- gcc_assert (!m_min && !m_max);
+ gcc_assert (!min () && !max ());
gcc_assert (!m_equiv || bitmap_empty_p (m_equiv));
break;
default:
value_range::singleton_p (tree *result) const
{
if (m_kind == VR_RANGE
- && vrp_operand_equal_p (m_min, m_max)
- && is_gimple_min_invariant (m_min))
+ && vrp_operand_equal_p (min (), max ())
+ && is_gimple_min_invariant (min ()))
{
if (result)
- *result = m_min;
+ *result = min ();
return true;
}
return false;
{
/* Types are only valid for VR_RANGE and VR_ANTI_RANGE, which are
known to have non-zero min/max. */
- gcc_assert (m_min);
- return TREE_TYPE (m_min);
+ gcc_assert (min ());
+ return TREE_TYPE (min ());
}
/* Dump value range to FILE. */
&& range_includes_zero_p (vr) == 0)
set_ptr_nonnull (name);
else if (!POINTER_TYPE_P (TREE_TYPE (name)))
- set_range_info (name, vr->kind (),
- wi::to_wide (vr->min ()),
- wi::to_wide (vr->max ()));
+ set_range_info (name, *vr);
}
/* If we're checking array refs, we want to merge information on