PR tree-optimization/83581
* tree-loop-distribution.c (pass_loop_distribution::execute): Return
TODO_cleanup_cfg if any changes have been made.
* gcc.dg/pr83581.c: New test.
From-SVN: r256055
2018-01-01 Jakub Jelinek <jakub@redhat.com>
+ PR tree-optimization/83581
+ * tree-loop-distribution.c (pass_loop_distribution::execute): Return
+ TODO_cleanup_cfg if any changes have been made.
+
PR middle-end/83608
* expr.c (store_expr_with_bounds): Use simplify_gen_subreg instead of
convert_modes if target mode has the right side, but different mode
2018-01-01 Jakub Jelinek <jakub@redhat.com>
+ PR tree-optimization/83581
+ * gcc.dg/pr83581.c: New test.
+
PR c/83595
* gcc.dg/pr83595.c: New test.
--- /dev/null
+/* PR tree-optimization/83581 */
+/* { dg-do compile } */
+/* { dg-options "-O3 -fno-tree-copy-prop -fno-tree-loop-im" } */
+
+int a, b, c;
+
+int
+foo (int x)
+{
+ int *d = &x;
+ while (a < 1)
+ {
+ for (b = 0; b < 2; ++b)
+ {
+ *d += !!x + 1;
+ d = &c;
+ }
+ ++a;
+ }
+ return *d;
+}
checking_verify_loop_structure ();
- return 0;
+ return changed ? TODO_cleanup_cfg : 0;
}
} // anon namespace