2019-02-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/89253
* tree-ssa-loop-split.c (tree_ssa_split_loops): Check we can
duplicate the loop.
* gfortran.dg/pr89253.f: New testcase.
From-SVN: r268790
+2019-02-12 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/89253
+ * tree-ssa-loop-split.c (tree_ssa_split_loops): Check we can
+ duplicate the loop.
+
2019-02-11 David Malcolm <dmalcolm@redhat.com>
PR lto/88147
+2019-02-12 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/89253
+ * gfortran.dg/pr89253.f: New testcase.
+
2019-02-11 Marek Polacek <polacek@redhat.com>
PR c++/89212 - ICE converting nullptr to pointer-to-member-function.
--- /dev/null
+! { dg-do compile }
+! { dg-additional-options "-fsplit-loops -fno-tree-dominator-opts -std=legacy -w" }
+ program jr
+ integer :: w5, pg, zh
+ w5 = 0
+ write (w5)
+ assign 0002 to w5
+ do pg = 1, 3
+ if (pg .eq. 1) then
+ do zh = 1, pg
+ end do
+ else
+ goto w5
+ 0001 zh = 0
+ 0002 zh = 0
+ assign 0001 to w5
+ endif
+ end do
+ end
false, true)
&& niter.cmp != ERROR_MARK
/* We can't yet handle loops controlled by a != predicate. */
- && niter.cmp != NE_EXPR)
+ && niter.cmp != NE_EXPR
+ && can_duplicate_loop_p (loop))
{
if (split_loop (loop, &niter))
{