From d16464bb8bd93317095cf3f73afdee3a44dde021 Mon Sep 17 00:00:00 2001 From: Daniel Berlin Date: Sun, 12 Dec 2004 15:52:33 +0000 Subject: [PATCH] tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null. 2004-12-13 Daniel Berlin * tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null. * tree-ssa-loop-im.c (determine_lsm): tree_root may not have a real inner loop. From-SVN: r92048 --- gcc/ChangeLog | 6 ++++++ gcc/tree-ssa-loop-ch.c | 2 ++ gcc/tree-ssa-loop-im.c | 3 +++ 3 files changed, 11 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0a14a0d2fd7..da3f3defac6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-12-13 Daniel Berlin + + * tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null. + * tree-ssa-loop-im.c (determine_lsm): tree_root may not have a real + inner loop. + 2004-12-12 Diego Novillo * tree-gimple.c (get_base_address): Update documentation. diff --git a/gcc/tree-ssa-loop-ch.c b/gcc/tree-ssa-loop-ch.c index 71d1bf2162c..e307528b2a8 100644 --- a/gcc/tree-ssa-loop-ch.c +++ b/gcc/tree-ssa-loop-ch.c @@ -152,6 +152,8 @@ copy_loop_headers (void) int limit = 20; loop = loops->parray[i]; + if (!loop) + continue; header = loop->header; /* If the loop is already a do-while style one (either because it was diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c index 16e477c9cc5..05970f8d2e1 100644 --- a/gcc/tree-ssa-loop-im.c +++ b/gcc/tree-ssa-loop-im.c @@ -1252,6 +1252,9 @@ determine_lsm (struct loops *loops) struct loop *loop; basic_block bb; + if (!loops->tree_root->inner) + return; + /* Create a UID for each statement in the function. Ordering of the UIDs is not important for this pass. */ max_stmt_uid = 0; -- 2.30.2