summaryrefslogtreecommitdiff
path: root/gcc/tree-vect-stmts.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2011-08-22 17:01:42 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2011-08-22 17:01:42 +0200
commitad885386508bd87fbc5713470fb0268d5e82b668 (patch)
tree72d4329bd13fcbb56fd16050ae5a13b418dfc1e4 /gcc/tree-vect-stmts.c
parente4269c7843070aa3ebc7c9e2e81c2e8a8d941c50 (diff)
downloadgcc-ad885386508bd87fbc5713470fb0268d5e82b668.tar.gz
re PR tree-optimization/50133 (ICE: SIGSEGV in vect_finish_stmt_generation (gimple.h:4821) with -ftree-vectorize -fno-tree-loop-im)
PR tree-optimization/50133 * tree-vect-stmts.c (vect_finish_stmt_generation): Copy location from stmt instead of some statement around gsi. * gcc.dg/pr50133.c: New test. From-SVN: r177958
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r--gcc/tree-vect-stmts.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index c0ca2af8e80..bab19b8845b 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -1419,7 +1419,6 @@ vect_finish_stmt_generation (gimple stmt, gimple vec_stmt,
stmt_vec_info stmt_info = vinfo_for_stmt (stmt);
loop_vec_info loop_vinfo = STMT_VINFO_LOOP_VINFO (stmt_info);
bb_vec_info bb_vinfo = STMT_VINFO_BB_VINFO (stmt_info);
- gimple_stmt_iterator si;
gcc_assert (gimple_code (stmt) != GIMPLE_LABEL);
@@ -1434,13 +1433,7 @@ vect_finish_stmt_generation (gimple stmt, gimple vec_stmt,
print_gimple_stmt (vect_dump, vec_stmt, 0, TDF_SLIM);
}
- si = *gsi;
- if (is_gimple_debug (gsi_stmt (si)))
- {
- gsi_next_nondebug (&si);
- gcc_assert (!gsi_end_p (si));
- }
- gimple_set_location (vec_stmt, gimple_location (gsi_stmt (si)));
+ gimple_set_location (vec_stmt, gimple_location (stmt));
}
/* Checks if CALL can be vectorized in type VECTYPE. Returns