https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35545
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> --- Well - ideally you'd want to do some CSE, not only VRP (constant propagation in this case). So I'd move it even earlier, after pass_lower_vector_ssa? I can't see what tracing would break (some odd cases can destroy loop info, but I think I have disabled all those).