aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2022-07-22 09:00:37 +0200
committerRichard Biener <rguenther@suse.de>2022-07-22 09:33:43 +0200
commit3c4af0f0549a07799d76e9e48d3d3bd85197b92a (patch)
treef44dc4537dfd9674efc4efa64149be732bd6b778
parentaaf9583d4cf048850b1eb74d25866f45198e35b8 (diff)
downloadgcc-3c4af0f0549a07799d76e9e48d3d3bd85197b92a.zip
gcc-3c4af0f0549a07799d76e9e48d3d3bd85197b92a.tar.gz
gcc-3c4af0f0549a07799d76e9e48d3d3bd85197b92a.tar.bz2
tree-optimization/106387 - properly create SSA name for realigned load
The following fixes an oversight triggering after the recent change to bump_vector_ptr. PR tree-optimization/106387 * tree-vect-stmts.cc (vectorizable_load): Use make_ssa_name if ptr is not an SSA name.
-rw-r--r--gcc/tree-vect-stmts.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
index 01d982e..f582d23 100644
--- a/gcc/tree-vect-stmts.cc
+++ b/gcc/tree-vect-stmts.cc
@@ -10017,7 +10017,10 @@ vectorizable_load (vec_info *vinfo,
(NULL_TREE, BIT_AND_EXPR, ptr,
build_int_cst
(TREE_TYPE (ptr), -(HOST_WIDE_INT) align));
- ptr = copy_ssa_name (ptr, new_stmt);
+ if (TREE_CODE (ptr) == SSA_NAME)
+ ptr = copy_ssa_name (ptr, new_stmt);
+ else
+ ptr = make_ssa_name (TREE_TYPE (ptr), new_stmt);
gimple_assign_set_lhs (new_stmt, ptr);
vect_finish_stmt_generation (vinfo, stmt_info,
new_stmt, gsi);