https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87873
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Mon Nov 5 14:55:53 2018 New Revision: 265812 URL: https://gcc.gnu.org/viewcvs?rev=265812&root=gcc&view=rev Log: 2018-11-05 Richard Biener <rguent...@suse.de> PR tree-optimization/87873 * tree-ssa-loop-manip.h (split_loop_exit_edge): Add copy_constants_p argument. * tree-ssa-loop-manip.c (split_loop_exit_edge): Likewise. * tree-vect-loop.c (vect_transform_loop): When splitting the loop exit also create forwarder PHIs for constants. * tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges): Handle constant to_arg, add extra checking we match up the correct PHIs. * gcc.dg/pr87873.c: New testcase. Added: trunk/gcc/testsuite/gcc.dg/pr87873.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-loop-manip.c trunk/gcc/tree-ssa-loop-manip.h trunk/gcc/tree-vect-loop-manip.c trunk/gcc/tree-vect-loop.c