https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115307
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- The issue is that we probably fold isinff early. On x86 I see already in .original: return !(ABS_EXPR <f> u<= 3.4028234663852885981170418348451692544e+38); I think your option is to provide optabs for isinf<mode> but make expansion of them always FAIL; (which is of course a quite ugly way)