https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109008

--- Comment #11 from Richard Biener <rguenth at gcc dot gnu.org> ---
I think for the reverse op I'd naiively try to compute the result as we do now
and then extend the range by one ulp of the input range with the largest
magnitude.

Does real_nextafter (0.0) result in a denormal?  For multiplication we have
to consider underflow, say, if

 0.0 = x * 1e-63;

depending on whether we represent denormals in ranges x is the range
where the operation underflows.

As said we probably have to think and document what we do for individual
operations.

We can also conservatively widen the input ranges by one
ulp, that's going to be always correct and maybe the best thing to do
for GCC 13?  It should be only necessary for the reverse operations.

Reply via email to