aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-vect-loop.c10
2 files changed, 11 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b5a39b9..e213db6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2017-09-16 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/82228
+ * tree-vect-loop.c (vectorizable_live_operation): Move initialization
+ of ncopies.
+
2017-09-16 Chung-Ju Wu <jasonwucj@gmail.com>
* common/config/nds32/nds32-common.c
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index 80eb4f1..c7cc79f 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -7029,11 +7029,6 @@ vectorizable_live_operation (gimple *stmt,
gcc_assert (STMT_VINFO_LIVE_P (stmt_info));
- if (slp_node)
- ncopies = 1;
- else
- ncopies = vect_get_num_copies (loop_vinfo, vectype);
-
if (STMT_VINFO_DEF_TYPE (stmt_info) == vect_reduction_def)
return false;
@@ -7054,6 +7049,11 @@ vectorizable_live_operation (gimple *stmt,
return true;
}
+ if (slp_node)
+ ncopies = 1;
+ else
+ ncopies = vect_get_num_copies (loop_vinfo, vectype);
+
if (!vec_stmt)
/* No transformation required. */
return true;