re PR tree-optimization/71416 (ICE at -O3 in 32-bit and 64-bit modes on x86_64-linux-gnu (vectorizable_live_operation))
2016-06-13 Alan Hayward <alan.hayward@arm.com> gcc/ PR tree-optimization/71416 * tree-vect-loop.c (vectorizable_live_operation): Let worklist have multiple entries From-SVN: r237375
This commit is contained in:
parent
46c1cff63f
commit
915794eb26
|
@ -1,3 +1,9 @@
|
||||||
|
2016-06-13 Alan Hayward <alan.hayward@arm.com>
|
||||||
|
|
||||||
|
PR tree-optimization/71416
|
||||||
|
* tree-vect-loop.c (vectorizable_live_operation): Let worklist have
|
||||||
|
multiple entries
|
||||||
|
|
||||||
2016-06-13 Martin Liska <mliska@suse.cz>
|
2016-06-13 Martin Liska <mliska@suse.cz>
|
||||||
|
|
||||||
* predict.c (enum predictor_reason): Prefix enum with REASON_.
|
* predict.c (enum predictor_reason): Prefix enum with REASON_.
|
||||||
|
|
|
@ -6351,7 +6351,7 @@ vectorizable_live_operation (gimple *stmt,
|
||||||
FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, lhs)
|
FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, lhs)
|
||||||
if (!flow_bb_inside_loop_p (loop, gimple_bb (use_stmt)))
|
if (!flow_bb_inside_loop_p (loop, gimple_bb (use_stmt)))
|
||||||
worklist.safe_push (use_stmt);
|
worklist.safe_push (use_stmt);
|
||||||
gcc_assert (worklist.length () == 1);
|
gcc_assert (worklist.length () >= 1);
|
||||||
|
|
||||||
bitsize = TYPE_SIZE (TREE_TYPE (vectype));
|
bitsize = TYPE_SIZE (TREE_TYPE (vectype));
|
||||||
vec_bitsize = TYPE_SIZE (vectype);
|
vec_bitsize = TYPE_SIZE (vectype);
|
||||||
|
@ -6409,9 +6409,12 @@ vectorizable_live_operation (gimple *stmt,
|
||||||
|
|
||||||
/* Replace all uses of the USE_STMT in the worklist with the newly inserted
|
/* Replace all uses of the USE_STMT in the worklist with the newly inserted
|
||||||
statement. */
|
statement. */
|
||||||
use_stmt = worklist.pop ();
|
while (!worklist.is_empty ())
|
||||||
replace_uses_by (gimple_phi_result (use_stmt), new_tree);
|
{
|
||||||
update_stmt (use_stmt);
|
use_stmt = worklist.pop ();
|
||||||
|
replace_uses_by (gimple_phi_result (use_stmt), new_tree);
|
||||||
|
update_stmt (use_stmt);
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue