diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/tree-vect-slp.c | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 42ed626..c3f08d8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2013-05-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/57478 + PR tree-optimization/57453 + * tree-vect-slp.c (vect_bb_slp_scalar_cost): Uses in PHI nodes + are life as well. + 2013-05-31 Kaushik Phatak <kaushik.phatak@kpitcummins.com> * config/rl78/rl78.md (mulqi3,mulhi3): New define_expands. diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c index 3dde063..2877dd8 100644 --- a/gcc/tree-vect-slp.c +++ b/gcc/tree-vect-slp.c @@ -1932,7 +1932,8 @@ vect_bb_slp_scalar_cost (basic_block bb, imm_use_iterator use_iter; gimple use_stmt; FOR_EACH_IMM_USE_STMT (use_stmt, use_iter, DEF_FROM_PTR (def_p)) - if (gimple_bb (use_stmt) != bb + if (gimple_code (use_stmt) == GIMPLE_PHI + || gimple_bb (use_stmt) != bb || !STMT_VINFO_VECTORIZABLE (vinfo_for_stmt (use_stmt))) { life[i] = true; |