+2006-11-12 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-loop.c (tree_vectorize): Return the result of
+ vectorize_loops.
+ * tree-vectorizer.c (vectorize_loops): Return TODO_cleanup_cfg
+ if anything changed.
+ * tree-vectorizer.h (vectorize_loops): Declaration removed.
+ * tree-flow.h (vectorize_loops): Declaration changed.
+
2006-11-12 Zdenek Dvorak <dvorakz@suse.cz>
* tree-ssa-loop-prefetch.c (schedule_prefetches): Cleanup and improve
};
/* In tree-vectorizer.c */
-void vectorize_loops (struct loops *);
+unsigned vectorize_loops (struct loops *);
extern bool vect_can_force_dr_alignment_p (tree, unsigned int);
extern tree get_vectype_for_scalar_type (tree);
static unsigned int
tree_vectorize (void)
{
- vectorize_loops (current_loops);
- return 0;
+ return vectorize_loops (current_loops);
}
static bool
Entry Point to loop vectorization phase. */
-void
+unsigned
vectorize_loops (struct loops *loops)
{
unsigned int i;
destroy_loop_vec_info (loop_vinfo);
loop->aux = NULL;
}
+
+ return num_vectorized_loops > 0 ? TODO_cleanup_cfg : 0;
}
extern loop_vec_info new_loop_vec_info (struct loop *loop);
extern void destroy_loop_vec_info (loop_vec_info);
extern stmt_vec_info new_stmt_vec_info (tree stmt, loop_vec_info);
-/* Main driver. */
-extern void vectorize_loops (struct loops *);
/** In tree-vect-analyze.c **/