+2015-08-01 Alan Hayward <alan.hayward@arm.com>
+
+ PR tree-optimization/71818
+ * tree-vect-loop-manip.c (vect_can_advance_ivs_p): Don't advance IVs
+ with non invariant evolutions
+
2016-08-01 Georg-Johann Lay <avr@gjlay.de>
PR target/72767
+2015-08-01 Alan Hayward <alan.hayward@arm.com>
+
+ PR tree-optimization/71818
+ * gcc.dg/vect/pr71818.c: New
+
2016-08-01 Martin Liska <mliska@suse.cz>
PR tree-optimization/71857
#include "cfgloop.h"
#include "tree-scalar-evolution.h"
#include "tree-vectorizer.h"
+#include "tree-ssa-loop-ivopts.h"
/*************************************************************************
Simple Loop Peeling Utilities
return false;
}
+ /* FORNOW: We do not transform initial conditions of IVs
+ which evolution functions are not invariants in the loop. */
+
+ if (!expr_invariant_in_loop_p (loop, evolution_part))
+ {
+ if (dump_enabled_p ())
+ dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
+ "evolution not invariant in loop.\n");
+ return false;
+ }
+
/* FORNOW: We do not transform initial conditions of IVs
which evolution functions are a polynomial of degree >= 2. */
if (tree_is_chrec (evolution_part))
- return false;
+ {
+ if (dump_enabled_p ())
+ dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
+ "evolution is chrec.\n");
+ return false;
+ }
}
return true;