OSDN Git Service

2004-09-22 Frank Ch. Eigler <fche@redhat.com>
authorfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Sep 2004 20:36:14 +0000 (20:36 +0000)
committerfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Sep 2004 20:36:14 +0000 (20:36 +0000)
* dominance.c (verify_dominators): Don't SEGV if recount_dominator
returns NULL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87883 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/dominance.c

index 203a65b..0d59f07 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-22  Frank Ch. Eigler  <fche@redhat.com>
+
+       * dominance.c (verify_dominators): Don't SEGV if recount_dominator
+       returns NULL.
+
 2004-09-22  Kazu Hirata  <kazu@cs.umass.edu>
 
        * doc/c-tree.texi (TRUTH_NOT_EXPR, TRUTH_ANDIF_EXPR,
index 2782547..ef40b54 100644 (file)
@@ -833,8 +833,12 @@ verify_dominators (enum cdi_direction dir)
       dom_bb = recount_dominator (dir, bb);
       if (dom_bb != get_immediate_dominator (dir, bb))
        {
-         error ("dominator of %d should be %d, not %d",
-          bb->index, dom_bb->index, get_immediate_dominator(dir, bb)->index);
+         if (dom_bb == NULL)
+           error ("dominator of %d should be (unknown), not %d",
+                  bb->index, get_immediate_dominator(dir, bb)->index);
+         else
+           error ("dominator of %d should be %d, not %d",
+                  bb->index, dom_bb->index, get_immediate_dominator(dir, bb)->index);
          err = 1;
        }
     }