Hello,
--- gcc/gimple-range-op.cc.jj 2023-04-21 17:09:48.250367999 +0200
+++ gcc/gimple-range-op.cc 2023-04-21 18:37:26.048325391 +0200
@@ -439,20 +436,38 @@ public:
r.set_varying (type);
return true;
}
+
// Results outside of [-1.0, +1.0] are impossible.
REAL_VALUE_TYPE lb = lhs.lower_bound ();
REAL_VALUE_TYPE ub = lhs.upper_bound ();
- if (real_less (&lb, &dconstm1)
- || real_less (&dconst1, &ub))
+ if (real_less (&lb, &dconstm1) || real_less (&dconst1, &ub))
{
Shouldn't lb and ub be swapped in this condition?
If I understand correctly, we are looking for ranges like [whatever,x]
where x < -1.0 or [y, whatever] where 1.0 < y.
Mikael