diff options
author | Richard Biener <rguenther@suse.de> | 2015-12-09 08:23:37 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2015-12-09 08:23:37 +0000 |
commit | 34cd48e5d56b95f149e1c7e294f522bd3c93c94f (patch) | |
tree | 9ff1243e93a071aa2f7c45e26f7cf38a8b627292 /gcc/tree-vect-stmts.c | |
parent | 37074a02aee862ae15867e40aa5a12db616657b6 (diff) | |
download | gcc-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.c | 7 |
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) |