OSDN Git Service

* tree-ssa-threadupdate.c (rediscover_loops_after_threading):
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 5 Mar 2006 17:31:20 +0000 (17:31 +0000)
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 5 Mar 2006 17:31:20 +0000 (17:31 +0000)
Remove.
* basic-block.h: Remove the extern for
rediscover_loops_after_threading.

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

gcc/ChangeLog
gcc/basic-block.h
gcc/tree-ssa-threadupdate.c

index 89ad55d..332499b 100644 (file)
@@ -1,5 +1,12 @@
 2006-03-05  Kazu Hirata  <kazu@codesourcery.com>
 
+       * tree-ssa-threadupdate.c (rediscover_loops_after_threading):
+       Remove.
+       * basic-block.h: Remove the extern for
+       rediscover_loops_after_threading.
+
+2006-03-05  Kazu Hirata  <kazu@codesourcery.com>
+
        * recog.c (volatile_mem_p, validate_change_maybe_volatile):
        Remove.
        * recog.h: Remove the prototype for
index 8179e09..a07a517 100644 (file)
@@ -414,10 +414,6 @@ struct control_flow_graph GTY(())
 #define BASIC_BLOCK(N)         (VEC_index (basic_block, basic_block_info, (N)))
 #define SET_BASIC_BLOCK(N,BB)  (VEC_replace (basic_block, basic_block_info, (N), (BB)))
 
-/* TRUE if we should re-run loop discovery after threading jumps, FALSE
-   otherwise.  */
-extern bool rediscover_loops_after_threading;
-
 /* For iterating over basic blocks.  */
 #define FOR_BB_BETWEEN(BB, FROM, TO, DIR) \
   for (BB = FROM; BB != TO; BB = BB->DIR)
index 4a92eff..444bbb7 100644 (file)
@@ -131,8 +131,6 @@ struct redirection_data
 /* Main data structure to hold information for duplicates of BB.  */
 static htab_t redirection_data;
 
-bool rediscover_loops_after_threading;
-
 /* Data structure of information to pass to hash table traversal routines.  */
 struct local_info
 {
@@ -735,30 +733,6 @@ thread_block (basic_block bb)
          update_bb_profile_for_threading (e->dest, EDGE_FREQUENCY (e),
                                           e->count, e->aux);
 
-         /* If we thread to a loop exit edge, then we will need to 
-            rediscover the loop exit edges.  While it may seem that
-            the new edge is a loop exit edge, that is not the case.
-            Consider threading the edge (5,6) to E in the CFG on the
-            left which creates the CFG on the right:
-
-
-                      0<--+            0<---+
-                     / \  |           / \   |
-                    1   2 |          1   2  |
-                   / \  | |         / \  |  |
-                  3   4 | |        3   4 6--+
-                   \ /  | |         \ /
-                    5   | |          5
-                     \ /  |          |
-                      6---+          E
-                      |
-                      E
-
-            After threading, the edge (0, 1)  is the loop exit edge and
-            the nodes 0, 2, 6 are the only nodes in the loop.  */
-         if (e2->flags & EDGE_LOOP_EXIT)
-           rediscover_loops_after_threading = true;
-
          /* Insert the outgoing edge into the hash table if it is not
             already in the hash table.  */
          lookup_redirection_data (e2, e, INSERT);
@@ -859,7 +833,6 @@ thread_through_all_blocks (void)
     return false;
 
   threaded_blocks = BITMAP_ALLOC (NULL);
-  rediscover_loops_after_threading = false;
   memset (&thread_stats, 0, sizeof (thread_stats));
 
   mark_threaded_blocks (threaded_blocks);