aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2024-10-21 18:11:43 -0400
committerAndrew MacLeod <amacleod@redhat.com>2024-10-24 08:49:29 -0400
commit7173e2ff30c1e42168db4ac1dedc12ae1518faab (patch)
tree5b3f9b78d04434cf5133527a0b2d74d167d68823
parent20d80c84ee4d19950c7d39f5c8be52836e90cad9 (diff)
downloadgcc-7173e2ff30c1e42168db4ac1dedc12ae1518faab.zip
gcc-7173e2ff30c1e42168db4ac1dedc12ae1518faab.tar.gz
gcc-7173e2ff30c1e42168db4ac1dedc12ae1518faab.tar.bz2
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.
-rw-r--r--gcc/range-op-ptr.cc28
1 files changed, 0 insertions, 28 deletions
diff --git a/gcc/range-op-ptr.cc b/gcc/range-op-ptr.cc
index 4f4b2cf..f8ce62d 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: