+2004-12-15 Daniel Berlin <dberlin@dberlin.org>
+
+ * cfgloop.c (flow_loops_dump): Don't print out levels.
+ (flow_loops_find): Don't set loop->levels.
+ (flow_loops_level_compute): Make void.
+ * cfgloop.h (struct loops): Remove levels member.
+ Add comment about loops in parray possibly being NULL.
+
2004-12-15 Alexandre Oliva <aoliva@redhat.com>
* reload.c (SMALL_REGISTER_CLASS_P): New.
static void flow_loop_pre_header_scan (struct loop *);
static basic_block flow_loop_pre_header_find (basic_block);
static int flow_loop_level_compute (struct loop *);
-static int flow_loops_level_compute (struct loops *);
+static void flow_loops_level_compute (struct loops *);
static void establish_preds (struct loop *);
static void canonicalize_loop_headers (void);
static bool glb_enum_p (basic_block, void *);
if (! num_loops || ! file)
return;
- fprintf (file, ";; %d loops found, %d levels\n",
- num_loops, loops->levels);
+ fprintf (file, ";; %d loops found\n", num_loops);
for (i = 0; i < num_loops; i++)
{
hierarchy tree specified by LOOPS. Return the maximum enclosed loop
level. */
-static int
+static void
flow_loops_level_compute (struct loops *loops)
{
- return flow_loop_level_compute (loops->tree_root);
+ flow_loop_level_compute (loops->tree_root);
}
/* Scan a single natural loop specified by LOOP collecting information
/* Assign the loop nesting depth and enclosed loop level for each
loop. */
- loops->levels = flow_loops_level_compute (loops);
+ flow_loops_level_compute (loops);
/* Scan the loops. */
for (i = 1; i < num_loops; i++)
/* Number of natural loops in the function. */
unsigned num;
- /* Maximum nested loop level in the function. */
- unsigned levels;
-
/* Array of natural loop descriptors (scanning this array in reverse order
will find the inner loops before their enclosing outer loops). */
struct loop *array;
/* The above array is unused in new loop infrastructure and is kept only for
purposes of the old loop optimizer. Instead we store just pointers to
- loops here. */
+ loops here.
+ Note that a loop in this array may actually be NULL, if the loop
+ has been removed and the entire loops structure has not been
+ recomputed since that time. */
struct loop **parray;
/* Pointer to root of loop hierarchy tree. */