summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Inführ <dominik.infuehr@theobroma-systems.com>2017-07-06 18:04:51 +0200
committerChristoph Muellner <christoph.muellner@theobroma-systems.com>2018-04-27 12:17:54 +0200
commit942940be0f81b83037da18b0a0c2c8fb7a26f29f (patch)
tree3961e4044054a330f0ec15fd35494abe10d68c81
parenta3ba4a0362e6707ca4ac86ee8590faecc10ae5d4 (diff)
tree-vect-slp: Adapt calculation of scalar cost.
needs own life-array for every subtree
-rw-r--r--gcc/tree-vect-slp.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
index 4c5dc880678f..6afe5cc73b1c 100644
--- a/gcc/tree-vect-slp.c
+++ b/gcc/tree-vect-slp.c
@@ -2566,6 +2566,11 @@ vect_bb_slp_scalar_cost (basic_block bb,
gimple *stmt;
slp_tree child;
+ auto_vec<bool, 20> subtree_life;
+ subtree_life.safe_splice(*life);
+
+ life = &subtree_life;
+
FOR_EACH_VEC_ELT (SLP_TREE_SCALAR_STMTS (node), i, stmt)
{
unsigned stmt_cost;