2019-11-14 Andrew MacLeod <amacleod@redhat.com>
PR tree-optimization/92506
* range-op.cc (range_operator::fold_range): Start with range undefined.
(operator_abs::wi_fold): Fix wrong line copy... With wrapv, abs with
overflow is varying.
From-SVN: r278259
+2019-11-14 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/92506
+ * range-op.cc (range_operator::fold_range): Start with range undefined.
+ (operator_abs::wi_fold): Fix wrong line copy... With wrapv, abs with
+ overflow is varying.
+
2019-11-14 Aldy Hernandez <aldyh@redhat.com>
* range-op.cc (*operator*::*range): Remove calls to
return;
value_range tmp;
+ r.set_undefined ();
for (unsigned x = 0; x < lh.num_pairs (); ++x)
for (unsigned y = 0; y < rh.num_pairs (); ++y)
{
wide_int max_value = wi::max_value (prec, sign);
if (!TYPE_OVERFLOW_UNDEFINED (type) && wi::eq_p (lh_lb, min_value))
{
- r = value_range (type, lh_lb, lh_ub);
+ r = value_range (type);
return;
}