OSDN Git Service

PR c++/28659
[pf3gnuchains/gcc-fork.git] / gcc / tree-vect-analyze.c
index 9df8ba2..f247cd9 100644 (file)
@@ -1889,7 +1889,8 @@ vect_analyze_loop_form (struct loop *loop)
      that the loop is represented as a do-while (with a proper if-guard
      before the loop if needed), where the loop header contains all the
      executable statements, and the latch is empty.  */
-  if (!empty_block_p (loop->latch))
+  if (!empty_block_p (loop->latch)
+        || phi_nodes (loop->latch))
     {
       if (vect_print_dump_info (REPORT_BAD_FORM_LOOPS))
         fprintf (vect_dump, "not vectorized: unexpected loop form.");