https://gcc.gnu.org/g:7173e2ff30c1e42168db4ac1dedc12ae1518faab
commit r15-4597-g7173e2ff30c1e42168db4ac1dedc12ae1518faab Author: Andrew MacLeod <amacl...@redhat.com> Date: Mon Oct 21 18:11:43 2024 -0400 Remove pointer_min_max_operator. The pointer_min_max_operator class was used before the current dispatch system was created. These operations have been transferred to operator_min::fold_range () and operator_max::fold_range () with prange operands. This class is no longer used for anything, delete it. * range-op-ptr.cc (class pointer_min_max_operator): Remove. (pointer_min_max_operator::wi_fold): Remove. Diff: --- gcc/range-op-ptr.cc | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/gcc/range-op-ptr.cc b/gcc/range-op-ptr.cc index 4f4b2cf6bab9..f8ce62d5719d 100644 --- a/gcc/range-op-ptr.cc +++ b/gcc/range-op-ptr.cc @@ -379,34 +379,6 @@ pointer_plus_operator::op2_range (irange &r, tree type, return true; } -class pointer_min_max_operator : public range_operator -{ -public: - virtual void wi_fold (irange & r, tree type, - const wide_int &lh_lb, const wide_int &lh_ub, - const wide_int &rh_lb, const wide_int &rh_ub) const; -} op_ptr_min_max; - -void -pointer_min_max_operator::wi_fold (irange &r, tree type, - const wide_int &lh_lb, - const wide_int &lh_ub, - const wide_int &rh_lb, - const wide_int &rh_ub) const -{ - // For MIN/MAX expressions with pointers, we only care about - // nullness. If both are non null, then the result is nonnull. - // If both are null, then the result is null. Otherwise they - // are varying. - if (!wi_includes_zero_p (type, lh_lb, lh_ub) - && !wi_includes_zero_p (type, rh_lb, rh_ub)) - r.set_nonzero (type); - else if (wi_zero_p (type, lh_lb, lh_ub) && wi_zero_p (type, rh_lb, rh_ub)) - r.set_zero (type); - else - r.set_varying (type); -} - class pointer_and_operator : public range_operator { public: