]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* cfganal.c (compute_dominance_frontiers_1): Don't be quadratic.
authorJan Hubicka <jh@suse.cz>
Tue, 12 Sep 2006 22:54:38 +0000 (00:54 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 12 Sep 2006 22:54:38 +0000 (22:54 +0000)
From-SVN: r116909

gcc/ChangeLog
gcc/cfganal.c

index 41aa22178fb27747d81b6103cf61cb60e229207d..f5ec63af82b3e032f58e25dfd0f8e0e56e027a81 100644 (file)
@@ -1,3 +1,7 @@
+2006-09-13  Jan Hubicka  <jh@suse.cz>
+
+       * cfganal.c (compute_dominance_frontiers_1): Don't be quadratic.
+
 2006-09-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
 
        PR rtl-optimization/28243
index 835703fe8cf76c69456187174512e34287ac4818..467c399c84c5360d590ffbe44245c8603346c901 100644 (file)
@@ -1054,6 +1054,8 @@ compute_dominance_frontiers_1 (bitmap *frontiers)
              domsb = get_immediate_dominator (CDI_DOMINATORS, b);
              while (runner != domsb)
                {
+                 if (bitmap_bit_p (frontiers[runner->index], b->index))
+                   break;
                  bitmap_set_bit (frontiers[runner->index],
                                  b->index);
                  runner = get_immediate_dominator (CDI_DOMINATORS,