OSDN Git Service

* basic-block.h (compute_bb_for_insn): Declare.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Sep 1999 20:11:36 +0000 (20:11 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Sep 1999 20:11:36 +0000 (20:11 +0000)
        * flow.c (compute_bb_for_insn): Export.  Don't accept the varray
        to use; set size of basic_block_for_insn directly.
        (find_basic_blocks): Update.

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

gcc/ChangeLog
gcc/basic-block.h
gcc/flow.c

index e1be652..1797612 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 20 12:59:16 1999  Richard Henderson  <rth@cygnus.com>
+
+       * basic-block.h (compute_bb_for_insn): Declare.
+       * flow.c (compute_bb_for_insn): Export.  Don't accept the varray
+       to use; set size of basic_block_for_insn directly.
+       (find_basic_blocks): Update.
+
 Mon Sep 20 15:11:54 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * flow.c (verify_flow_info): Fix typo, "abort;" -> "abort ();".
index 4eca203..06ef7cf 100644 (file)
@@ -233,6 +233,7 @@ extern varray_type basic_block_for_insn;
 #define BLOCK_FOR_INSN(INSN)  VARRAY_BB (basic_block_for_insn, INSN_UID (INSN))
 #define BLOCK_NUM(INSN)              (BLOCK_FOR_INSN (INSN)->index + 0)
 
+extern void compute_bb_for_insn                PROTO ((int));
 extern void set_block_for_insn         PROTO ((rtx, basic_block));
 
 extern void dump_bb_data               PROTO ((FILE *, int_list_ptr *,
index b5b4800..988ccc7 100644 (file)
@@ -276,7 +276,6 @@ static bitmap uid_volatile;
 static int count_basic_blocks          PROTO((rtx));
 static rtx find_basic_blocks_1         PROTO((rtx, rtx*));
 static void create_basic_block         PROTO((int, rtx, rtx, rtx));
-static void compute_bb_for_insn                PROTO((varray_type, int));
 static void clear_edges                        PROTO((void));
 static void make_edges                 PROTO((rtx, rtx*));
 static void make_edge                  PROTO((basic_block, basic_block, int));
@@ -404,8 +403,7 @@ find_basic_blocks (f, nregs, file, do_cleanup)
   max_uid += max_uid / 10;
 #endif
 
-  VARRAY_BB_INIT (basic_block_for_insn, max_uid, "basic_block_for_insn");
-  compute_bb_for_insn (basic_block_for_insn, max_uid);
+  compute_bb_for_insn (max_uid);
 
   /* Discover the edges of our cfg.  */
 
@@ -804,13 +802,14 @@ create_basic_block (index, head, end, bb_note)
 /* Records the basic block struct in BB_FOR_INSN, for every instruction
    indexed by INSN_UID.  MAX is the size of the array.  */
 
-static void
-compute_bb_for_insn (bb_for_insn, max)
-     varray_type bb_for_insn;
+void
+compute_bb_for_insn (max)
      int max;
 {
   int i;
 
+  VARRAY_BB_INIT (basic_block_for_insn, max, "basic_block_for_insn");
+
   for (i = 0; i < n_basic_blocks; ++i)
     {
       basic_block bb = BASIC_BLOCK (i);
@@ -822,7 +821,7 @@ compute_bb_for_insn (bb_for_insn, max)
        {
          int uid = INSN_UID (insn);
          if (uid < max)
-           VARRAY_BB (bb_for_insn, uid) = bb;
+           VARRAY_BB (basic_block_for_insn, uid) = bb;
          if (insn == end)
            break;
          insn = NEXT_INSN (insn);