https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65947
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> --- You definitely need special support for COND_EXPR a reduction operator. And yes, if it's in that simple form then reducing the condition is the thing to do. But then you have more complex reduction operators (generally an issue - we don't support those very well), like if (a[i]) res += x; which AFAICR is quite common as well.