Revert op[12]_range operators for PLUS_EXPR and MINUS_EXPR.
Revert the patch below until issues are resolved:
commit 4287e8168f
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.
This commit is contained in:
parent
ace0ae0933
commit
8bb3f172d3
1 changed files with 0 additions and 45 deletions
|
@ -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,
|
||||
|
|
Loading…
Add table
Reference in a new issue