diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2022-11-09 16:35:40 +0100 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2022-11-09 16:56:21 +0100 |
commit | 8bb3f172d33e319a6c15c4285f820b9f152d990e (patch) | |
tree | 99ad3fcdb31e4a53c7d581bbf1f1e0570faec727 | |
parent | ace0ae09332bbc6b95e084c2c2b17c466339ff76 (diff) | |
download | gcc-8bb3f172d33e319a6c15c4285f820b9f152d990e.zip gcc-8bb3f172d33e319a6c15c4285f820b9f152d990e.tar.gz gcc-8bb3f172d33e319a6c15c4285f820b9f152d990e.tar.bz2 |
Revert op[12]_range operators for PLUS_EXPR and MINUS_EXPR.
Revert the patch below until issues are resolved:
commit 4287e8168f89e90b3dff3a50f3ada40be53e0e01
Author: Aldy Hernandez <aldyh@redhat.com>
Date: Wed Nov 9 01:00:57 2022 +0100
Implement op[12]_range operators for PLUS_EXPR and MINUS_EXPR.
We can implement the op[12]_range entries for plus and minus in terms
of each other. These are adapted from the integer versions.
gcc/ChangeLog:
* range-op-float.cc (class foperator_plus): Remove op[12]_range.
(class foperator_minus): Same.
-rw-r--r-- | gcc/range-op-float.cc | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/gcc/range-op-float.cc b/gcc/range-op-float.cc index cc80643..380142b 100644 --- a/gcc/range-op-float.cc +++ b/gcc/range-op-float.cc @@ -1863,29 +1863,6 @@ foperator_unordered_equal::op1_range (frange &r, tree type, class foperator_plus : public range_operator_float { - using range_operator_float::op1_range; - using range_operator_float::op2_range; -public: - virtual bool op1_range (frange &r, tree type, - const frange &lhs, - const frange &op2, - relation_trio = TRIO_VARYING) const final override - { - if (lhs.undefined_p ()) - return false; - range_op_handler minus (MINUS_EXPR, type); - if (!minus) - return false; - return minus.fold_range (r, type, lhs, op2); - } - virtual bool op2_range (frange &r, tree type, - const frange &lhs, - const frange &op1, - relation_trio = TRIO_VARYING) const final override - { - return op1_range (r, type, lhs, op1); - } -private: void rv_fold (REAL_VALUE_TYPE &lb, REAL_VALUE_TYPE &ub, bool &maybe_nan, tree type, const REAL_VALUE_TYPE &lh_lb, @@ -1910,28 +1887,6 @@ private: class foperator_minus : public range_operator_float { - using range_operator_float::op1_range; - using range_operator_float::op2_range; -public: - virtual bool op1_range (frange &r, tree type, - const frange &lhs, - const frange &op2, - relation_trio = TRIO_VARYING) const final override - { - if (lhs.undefined_p ()) - return false; - return fop_plus.fold_range (r, type, lhs, op2); - } - virtual bool op2_range (frange &r, tree type, - const frange &lhs, - const frange &op1, - relation_trio = TRIO_VARYING) const final override - { - if (lhs.undefined_p ()) - return false; - return fold_range (r, type, op1, lhs); - } -private: void rv_fold (REAL_VALUE_TYPE &lb, REAL_VALUE_TYPE &ub, bool &maybe_nan, tree type, const REAL_VALUE_TYPE &lh_lb, |