[Bug middle-end/94497] Branchless clamp in the general case gets a branch in a particular case ?
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Apr 6 13:33:53 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94497
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2020-04-06
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
The issue is that our GIMPLE level if-conversion does not do the min/max
replacement because our MIN/MAX_EXPR IL elements are not IEEE conforming
with respect to NaN behavior. There _is_ now FMIN/FMAX internal functions
which targets can support (not sure if x86 does support that named patterns)
which if-conversion could use (but it doesn't). There's a bug about exactly
that I think. PR88540 might be a close fit.
I do have a not working patch to address this, queued for GCC 11.
More information about the Gcc-bugs
mailing list