[Bug tree-optimization/107690] [13/14/15/16 Regression] vectorization fails for std::ranges::transform due to IR changes since r12-3903-g0288527f47cec669

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Feb 10 08:40:16 GMT 2026


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

--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
We're vectorizing it as uncounted loop, that's hardly a progression.

niter analysis only handles INTEGER_TYPE and POINTER_TYPE_P exit conditions,
so we probably want to disable if-combining into loop exit conditions.

Alternatively niter analysis could treat bit-and of two conditions as
two separate analyses and then attempt to merge the niter results somehow
(not exactly sure how or how useful that will be).  There's the possibility
the user wrote things this way.

We probably want to have a separate but tracking the if-combining issue
and one tracking niter analysis enhancement.

I'm testing a fix for ifcombine as heuristic.


More information about the Gcc-bugs mailing list