]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Remove pointer_min_max_operator.
authorAndrew MacLeod <amacleod@redhat.com>
Mon, 21 Oct 2024 22:11:43 +0000 (18:11 -0400)
committerAndrew MacLeod <amacleod@redhat.com>
Thu, 24 Oct 2024 12:49:29 +0000 (08:49 -0400)
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.

gcc/range-op-ptr.cc

index 4f4b2cf6bab961d71b2f8dad05b1884a72cadd73..f8ce62d5719d7a287664f9b5c2acf2daad123885 100644 (file)
@@ -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: