aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-ch.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-ssa-loop-ch.c')
-rw-r--r--gcc/tree-ssa-loop-ch.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/tree-ssa-loop-ch.c b/gcc/tree-ssa-loop-ch.c
index bcbc514..e1d5af8 100644
--- a/gcc/tree-ssa-loop-ch.c
+++ b/gcc/tree-ssa-loop-ch.c
@@ -123,7 +123,7 @@ do_while_loop_p (struct loop *loop)
static unsigned int
copy_loop_headers (void)
{
- unsigned i;
+ loop_iterator li;
struct loop *loop;
basic_block header;
edge exit, entry;
@@ -144,14 +144,11 @@ copy_loop_headers (void)
copied_bbs = XNEWVEC (basic_block, n_basic_blocks);
bbs_size = n_basic_blocks;
- for (i = 1; i < current_loops->num; i++)
+ FOR_EACH_LOOP (li, loop, 0)
{
/* Copy at most 20 insns. */
int limit = 20;
- loop = current_loops->parray[i];
- if (!loop)
- continue;
header = loop->header;
/* If the loop is already a do-while style one (either because it was