aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2021-09-17 12:48:09 +0200
committerRichard Biener <rguenther@suse.de>2021-09-17 13:50:54 +0200
commit4703182a06b831a9f47a5f8198e86042cadd938d (patch)
tree8924e7902dd3f2f13be277b9cbf546a47f172b6b /gcc
parent749c31b345c2a37106b57ce805ea46a6d4765e09 (diff)
downloadgcc-4703182a06b831a9f47a5f8198e86042cadd938d.zip
gcc-4703182a06b831a9f47a5f8198e86042cadd938d.tar.gz
gcc-4703182a06b831a9f47a5f8198e86042cadd938d.tar.bz2
Revert no longer needed fix for PR95539
The workaround is no longer necessary since we maintain alignment info on the DR group leader only. 2021-09-17 Richard Biener <rguenther@suse.de> * tree-vect-stmts.c (vectorizable_load): Do not frob stmt_info for SLP.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/tree-vect-stmts.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index 4e0b2ad..ce79d88 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -8515,17 +8515,6 @@ vectorizable_load (vec_info *vinfo,
if (!STMT_VINFO_DATA_REF (stmt_info))
return false;
- /* ??? Alignment analysis for SLP looks at SLP_TREE_SCALAR_STMTS[0]
- for unpermuted loads but we get passed SLP_TREE_REPRESENTATIVE
- which can be different when reduction chains were re-ordered.
- Now that we figured we're a dataref reset stmt_info back to
- SLP_TREE_SCALAR_STMTS[0]. When we're SLP only things should be
- refactored in a way to maintain the dr_vec_info pointer for the
- relevant access explicitely. */
- stmt_vec_info orig_stmt_info = stmt_info;
- if (slp_node)
- stmt_info = SLP_TREE_SCALAR_STMTS (slp_node)[0];
-
tree mask = NULL_TREE, mask_vectype = NULL_TREE;
if (gassign *assign = dyn_cast <gassign *> (stmt_info->stmt))
{
@@ -8768,7 +8757,7 @@ vectorizable_load (vec_info *vinfo,
dump_printf_loc (MSG_NOTE, vect_location,
"Vectorizing an unaligned access.\n");
- STMT_VINFO_TYPE (orig_stmt_info) = load_vec_info_type;
+ STMT_VINFO_TYPE (stmt_info) = load_vec_info_type;
vect_model_load_cost (vinfo, stmt_info, ncopies, vf, memory_access_type,
&gs_info, slp_node, cost_vec);
return true;