I've reconsidered my last change to dr_may_alias_p and decided it was correct before. The following reverts that change.
Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): Revert last change to dr_may_alias_p. --- gcc/tree-vect-data-refs.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc index e16796323b3..2170d17e839 100644 --- a/gcc/tree-vect-data-refs.cc +++ b/gcc/tree-vect-data-refs.cc @@ -772,11 +772,7 @@ vect_analyze_early_break_dependences (loop_vec_info loop_vinfo) the store. */ for (auto dr_read : bases) - /* Note we're not passing the DRs in stmt order here - since the DR dependence checking routine does not - envision we're moving stores down. The read-write - order tricks it to avoid applying TBAA. */ - if (dr_may_alias_p (dr_read, dr_ref, loop_nest)) + if (dr_may_alias_p (dr_ref, dr_read, loop_nest)) { if (dump_enabled_p ()) dump_printf_loc (MSG_MISSED_OPTIMIZATION, -- 2.35.3