OSDN Git Service

* tree-cfg.c (thread_jumps): Speed up by reordering the two
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Oct 2004 18:33:26 +0000 (18:33 +0000)
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Oct 2004 18:33:26 +0000 (18:33 +0000)
conditions for entering basic blocks into worklist.

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

gcc/ChangeLog
gcc/tree-cfg.c

index fcafd5f..ca2253e 100644 (file)
@@ -1,5 +1,10 @@
 2004-10-27  Kazu Hirata  <kazu@cs.umass.edu>
 
+       * tree-cfg.c (thread_jumps): Speed up by reordering the two
+       conditions for entering basic blocks into worklist.
+
+2004-10-27  Kazu Hirata  <kazu@cs.umass.edu>
+
        * tree-cfg.c (thread_jumps): Speed up by pretending to have
        ENTRY_BLOCK_PTR in worklist.
 
index 4492daa..e606749 100644 (file)
@@ -3974,11 +3974,11 @@ thread_jumps (void)
         among BB's predecessors.  */
       FOR_EACH_EDGE (e, ei, bb->preds)
        {
-         /* We are not interested in threading jumps from a forwarder
-            block.  */
-         if (!bb_ann (e->src)->forwardable
-             /* We don't want to put a duplicate into WORKLIST.  */
-             && (e->src->flags & BB_VISITED) == 0)
+         /* We don't want to put a duplicate into WORKLIST.  */
+         if ((e->src->flags & BB_VISITED) == 0
+             /* We are not interested in threading jumps from a forwarder
+                block.  */
+             && !bb_ann (e->src)->forwardable)
            {
              e->src->flags |= BB_VISITED;
              worklist[size] = e->src;
@@ -4013,11 +4013,11 @@ thread_jumps (void)
                 predecessors.  */
              FOR_EACH_EDGE (f, ej, bb->preds)
                {
-                 /* We are not interested in threading jumps from a
-                    forwarder block.  */
-                 if (!bb_ann (f->src)->forwardable
-                     /* We don't want to put a duplicate into WORKLIST.  */
-                     && (f->src->flags & BB_VISITED) == 0)
+                 /* We don't want to put a duplicate into WORKLIST.  */
+                 if ((f->src->flags & BB_VISITED) == 0
+                     /* We are not interested in threading jumps from a
+                        forwarder block.  */
+                     && !bb_ann (f->src)->forwardable)
                    {
                      f->src->flags |= BB_VISITED;
                      worklist[size] = f->src;