http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50904
--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-10-30 09:40:38 UTC --- I don't see why RTL invariant motion should move the one variant but not the other. Of course this also shows that we should, after loop unrolling on the tree level, also perform loop invariant motion again ...