aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2015-11-30 14:50:48 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2015-11-30 14:50:48 +0000
commit7a5a0decae0af00cf736ec2c8558c185e59e47b8 (patch)
treef64cb9bd68353d262c591f673ade4384a0d349d2 /gcc/tree-vect-loop.c
parentb699adcc9eec16b7856635658d12518b45ef0d3b (diff)
downloadgcc-7a5a0decae0af00cf736ec2c8558c185e59e47b8.zip
gcc-7a5a0decae0af00cf736ec2c8558c185e59e47b8.tar.gz
gcc-7a5a0decae0af00cf736ec2c8558c185e59e47b8.tar.bz2
re PR tree-optimization/68592 (ICE in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1403 with -fprofile-generate)
2015-11-30 Richard Biener <rguenther@suse.de> PR tree-optimization/68592 * tree-vect-loop.c (vect_analyze_loop_2): Reset SLP type also on the pattern def sequence. * gfortran.dg/pr68592.f: New testcase. From-SVN: r231074
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r--gcc/tree-vect-loop.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index 7d1f555..ee32166 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -2178,6 +2178,13 @@ again:
{
gcc_assert (STMT_SLP_TYPE (stmt_info) == loop_vect);
stmt_info = vinfo_for_stmt (STMT_VINFO_RELATED_STMT (stmt_info));
+ for (gimple_stmt_iterator pi
+ = gsi_start (STMT_VINFO_PATTERN_DEF_SEQ (stmt_info));
+ !gsi_end_p (pi); gsi_next (&pi))
+ {
+ gimple *pstmt = gsi_stmt (pi);
+ STMT_SLP_TYPE (vinfo_for_stmt (pstmt)) = loop_vect;
+ }
}
STMT_SLP_TYPE (stmt_info) = loop_vect;
}