summaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-21 21:02:40 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-21 21:02:40 +0000
commit71bfd0b0e7615769b460938beb0457bf7dcd7a4a (patch)
tree581953b8fbd4f3bfa0f312fedd4c8f78ad620719 /gcc/tree-vect-loop.c
parentebb395cc4a101fd99810c40db127c926f7cbbb49 (diff)
downloadgcc-71bfd0b0e7615769b460938beb0457bf7dcd7a4a.tar.gz
PR tree-optimization/53409
* tree-vect-loop.c (vect_analyze_loop_operations): Don't check vinfo_for_stmt (op_def_stmt) if op_def_stmt isn't inside loop. * gcc.c-torture/compile/pr53409.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_7-branch@187739 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r--gcc/tree-vect-loop.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index 1d0818c7ced..65dec8922dc 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -1326,7 +1326,9 @@ vect_analyze_loop_operations (loop_vec_info loop_vinfo, bool slp)
return false;
op_def_stmt = SSA_NAME_DEF_STMT (phi_op);
- if (!op_def_stmt || !vinfo_for_stmt (op_def_stmt))
+ if (!op_def_stmt
+ || !flow_bb_inside_loop_p (loop, gimple_bb (op_def_stmt))
+ || !vinfo_for_stmt (op_def_stmt))
return false;
if (STMT_VINFO_RELEVANT (vinfo_for_stmt (op_def_stmt))