https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106688
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #2) > _33 = (const unsigned char *) ivtmp.18_7; > invariant up to level 2, cost 1. Yep, that's an "old" thing, PRE would have moved it but LIM has something they call a cost model.