|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
2019-01-18 Jakub Jelinek <jakub@redhat.com>
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
PR tree-optimization/88044
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
* tree-ssa-loop-niter.c (number_of_iterations_cond): If condition
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
is false in the first iteration, but !every_iteration, return false
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
instead of true with niter->niter zero.
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
--- gcc/tree-ssa-loop-niter.c.jj 2019-01-10 11:43:02.254577008 +0100
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
+++ gcc/tree-ssa-loop-niter.c 2019-01-18 19:51:00.245504728 +0100
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
@@ -1824,6 +1824,8 @@ number_of_iterations_cond (struct loop *
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
tree tem = fold_binary (code, boolean_type_node, iv0->base, iv1->base);
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
if (tem && integer_zerop (tem))
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
{
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
+ if (!every_iteration)
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
+ return false;
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
niter->niter = build_int_cst (unsigned_type_for (type), 0);
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
niter->max = 0;
|
|
![](https://seccdn.libravatar.org/avatar/134c60e534a993fcaf7da4634f4199430a0cdb8c7235fa894d5ee95eb7cc444d?s=16&d=retro) |
3694bef |
return true;
|