Message ID | CAEwic4ZKufPsu1CpGs0Cnj8H1C_v7DgLP8pke-CouS-ThNmz6Q@mail.gmail.com |
---|---|
State | New |
Headers | show |
On Wed, Feb 25, 2015 at 07:13:55PM +0100, Kai Tietz wrote: > Hi, > > The patch didn't handled the case for dt being vect_constant_def, > where of course the reduc_def_stmt is NULL. > By checking for NULL before testing for PHI, we now fallback for such > cases to old behavior and return in the next if-statment. > > 2015-02-25 Richard Biener <rguenther@suse.de> > Kai Tietz <ktietz@redhat.com> > > PR tree-optimization/61917 > * tree-vect-loop.c (vectorizable_reduction): Handle obvious case > that reduc_def_stmt is null. > > Tested and will apply as obvious to trunk and 4.9 if there are no objections. Ok, thanks. > --- tree-vect-loop.c (Revision 220968) > +++ tree-vect-loop.c (Arbeitskopie) > @@ -4912,7 +4912,7 @@ vectorizable_reduction (gimple stmt, gimple_stmt_i > if (!found_nested_cycle_def) > reduc_def_stmt = def_stmt; > > - if (gimple_code (reduc_def_stmt) != GIMPLE_PHI) > + if (reduc_def_stmt && gimple_code (reduc_def_stmt) != GIMPLE_PHI) > return false; > > if (!(dt == vect_reduction_def Jakub
Index: tree-vect-loop.c =================================================================== --- tree-vect-loop.c (Revision 220968) +++ tree-vect-loop.c (Arbeitskopie) @@ -4912,7 +4912,7 @@ vectorizable_reduction (gimple stmt, gimple_stmt_i if (!found_nested_cycle_def) reduc_def_stmt = def_stmt; - if (gimple_code (reduc_def_stmt) != GIMPLE_PHI) + if (reduc_def_stmt && gimple_code (reduc_def_stmt) != GIMPLE_PHI) return false; if (!(dt == vect_reduction_def