https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121126

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
That means previously the

              /* FORNOW: we currently don't support the case that these phis    
2029                     are not used in the outerloop (unless it is double
reduction,          
2030                     i.e., this phi is vect_reduction_def), cause this case 
2031                     requires to actually do something here.  */            
2032                  if (STMT_VINFO_LIVE_P (stmt_info)                 
2033                      && !vect_active_double_reduction_p (stmt_info))       
2034                    return opt_result::failure_at (phi,             
2035                                                   "Unsupported loop-closed
phi"            
2036                                                   " in outer-loop.\n");    
2037                    
2038                  /* If PHI is used in the outer loop, we check that its
operand

check might have avoided vectorization here.  In particular the inner loop
has

# b_lsm... = PHI <_3>

defined outside of the loop - a missed propagation.

Reply via email to