summaryrefslogtreecommitdiff
path: root/gcc/loop-iv.c
diff options
context:
space:
mode:
authorKewen Lin <linkw@gcc.gnu.org>2019-06-27 05:33:15 +0000
committerKewen Lin <linkw@gcc.gnu.org>2019-06-27 05:33:15 +0000
commitb5b31291bd21749edc3d1f1d74ac09fcb6a89310 (patch)
tree6185084e2fc31be1fe2c649a272461e753f19c68 /gcc/loop-iv.c
parentce3ad45c3cbe51fe95936c7676a1fa2cb4f30c1c (diff)
One line change onto r272731
PR target/62147 * gcc/loop-iv.c (find_simple_exit) - if (single_exit (loop) && finite_loop_p (loop)) + if (desc->infinite && single_exit (loop) && finite_loop_p (loop)) From-SVN: r272732
Diffstat (limited to 'gcc/loop-iv.c')
-rw-r--r--gcc/loop-iv.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/loop-iv.c b/gcc/loop-iv.c
index 36f9856f5f6..207b5e2bfa3 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)