re PR tree-optimization/92405 (ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:1683)
2019-11-07 Richard Biener <rguenther@suse.de> PR tree-optimization/92405 * tree-vect-loop.c (vectorizable_reduction): Appropriately restrict lane-reducing ops to single stmt chains. From-SVN: r277921
This commit is contained in:
parent
7313607478
commit
084d390246
2 changed files with 18 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2019-11-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/92405
|
||||
* tree-vect-loop.c (vectorizable_reduction): Appropriately
|
||||
restrict lane-reducing ops to single stmt chains.
|
||||
|
||||
2019-11-07 Martin Jambor <mjambor@suse.cz>
|
||||
|
||||
PR lto/70929
|
||||
|
|
|
@ -5865,6 +5865,18 @@ vectorizable_reduction (stmt_vec_info stmt_info, slp_tree slp_node,
|
|||
reduc_chain_length++;
|
||||
}
|
||||
|
||||
/* For lane-reducing ops we're reducing the number of reduction PHIs
|
||||
which means the only use of that may be in the lane-reducing operation. */
|
||||
if (lane_reduc_code_p
|
||||
&& reduc_chain_length != 1
|
||||
&& !only_slp_reduc_chain)
|
||||
{
|
||||
if (dump_enabled_p ())
|
||||
dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
|
||||
"lane-reducing reduction with extra stmts.\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
reduc_def = PHI_RESULT (reduc_def_phi);
|
||||
for (i = 0; i < op_type; i++)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue