On Fri, Dec 21, 2018 at 12:46:41AM +0100, Jakub Jelinek wrote: > The following patch makes it build again, will commit as obvious if it > passes bootstrap/regtest: > > 2018-12-21 Jakub Jelinek <ja...@redhat.com> > > * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use > DR_TARGET_ALIGNMENT on dr_info rather than dr. > > --- gcc/tree-vect-data-refs.c.jj 2018-12-21 00:40:50.000000000 +0100 > +++ gcc/tree-vect-data-refs.c 2018-12-21 00:43:35.786222062 +0100 > @@ -2168,7 +2168,7 @@ vect_enhance_data_refs_alignment (loop_v > done by doing some iterations of the non-vectorized loop. */ > if (!multiple_p (LOOP_VINFO_VECT_FACTOR (loop_vinfo) > * DR_STEP_ALIGNMENT (dr), > - DR_TARGET_ALIGNMENT (dr))) > + DR_TARGET_ALIGNMENT (dr_info))) > { > do_versioning = false; > break; >
Here is what I've actually committed, some spelling errors fixed too: 2018-12-21 Jakub Jelinek <ja...@redhat.com> * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use DR_TARGET_ALIGNMENT on dr_info rather than dr. Spelling fixes. --- gcc/tree-vect-data-refs.c.jj 2018-12-21 00:40:50.000000000 +0100 +++ gcc/tree-vect-data-refs.c 2018-12-21 00:43:35.786222062 +0100 @@ -2163,12 +2163,12 @@ vect_enhance_data_refs_alignment (loop_v /* Forcing alignment in the first iteration is no good if we don't keep it across iterations. For now, just disable versioning in this case. - ?? We could actually unroll the loop to archive the required - overall step alignemnt, and forcing the alignment could be + ?? We could actually unroll the loop to achieve the required + overall step alignment, and forcing the alignment could be done by doing some iterations of the non-vectorized loop. */ if (!multiple_p (LOOP_VINFO_VECT_FACTOR (loop_vinfo) * DR_STEP_ALIGNMENT (dr), - DR_TARGET_ALIGNMENT (dr))) + DR_TARGET_ALIGNMENT (dr_info))) { do_versioning = false; break; Jakub