diff options
-rw-r--r-- | gcc/loop-iv.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/loop-iv.c b/gcc/loop-iv.c index 36f9856..207b5e2 100644 --- a/gcc/loop-iv.c +++ b/gcc/loop-iv.c @@ -3004,7 +3004,7 @@ find_simple_exit (struct loop *loop, struct niter_desc *desc) well. It results in incorrect predicate information on the exit condition expression. For example, if says [(int) _1 + -8, + , -8] != 0 finite, it means _1 can exactly divide -8. */ - if (single_exit (loop) && finite_loop_p (loop)) + if (desc->infinite && single_exit (loop) && finite_loop_p (loop)) { desc->infinite = NULL_RTX; if (dump_file) |