aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-stmts.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2015-12-09 08:23:37 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2015-12-09 08:23:37 +0000
commit34cd48e5d56b95f149e1c7e294f522bd3c93c94f (patch)
tree9ff1243e93a071aa2f7c45e26f7cf38a8b627292 /gcc/tree-vect-stmts.c
parent37074a02aee862ae15867e40aa5a12db616657b6 (diff)
downloadgcc-34cd48e5d56b95f149e1c7e294f522bd3c93c94f.zip
gcc-34cd48e5d56b95f149e1c7e294f522bd3c93c94f.tar.gz
gcc-34cd48e5d56b95f149e1c7e294f522bd3c93c94f.tar.bz2
tree-vect-stmts.c (vectorizable_load): Set new vinfo only if it was not yet set.
2015-12-09 Richard Biener <rguenther@suse.de> * tree-vect-stmts.c (vectorizable_load): Set new vinfo only if it was not yet set. * tree-vectorizer.h (set_vinfo_for_stmt): Assert we don't overwrite an existing entry. From-SVN: r231443
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r--gcc/tree-vect-stmts.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index 9f11652..1a65c03 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -7276,6 +7276,9 @@ vectorizable_load (gimple *stmt, gimple_stmt_iterator *gsi, gimple **vec_stmt,
unshare_expr
(gimple_assign_rhs1 (stmt))));
new_temp = vect_init_vector (stmt, tem, vectype, NULL);
+ new_stmt = SSA_NAME_DEF_STMT (new_temp);
+ set_vinfo_for_stmt (new_stmt,
+ new_stmt_vec_info (new_stmt, vinfo));
}
else
{
@@ -7283,10 +7286,8 @@ vectorizable_load (gimple *stmt, gimple_stmt_iterator *gsi, gimple **vec_stmt,
gsi_next (&gsi2);
new_temp = vect_init_vector (stmt, scalar_dest,
vectype, &gsi2);
+ new_stmt = SSA_NAME_DEF_STMT (new_temp);
}
- new_stmt = SSA_NAME_DEF_STMT (new_temp);
- set_vinfo_for_stmt (new_stmt,
- new_stmt_vec_info (new_stmt, vinfo));
}
if (negative)