Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
+ * loop.c (loop_number): Delete function. Change all references
+ to use uid_loop_num array.
+ * loop.h (loop_number): Delete declaration.
+ * unroll.c (unroll_loop): Change "loop_number" references to
+ use uid_loop_num instead.
+
* loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
conditional.
(loop_unroll_iter): Remove unused variable and all references.
/* Auxiliary function that inserts the bct pattern into the loop */
static void instrument_loop_bct ();
-
-
-int loop_number ();
#endif /* HAIFA */
/* Indirect_jump_in_function is computed once per function. */
enum machine_mode original_mode;
/* find the number of the loop */
- int loop_num = loop_number (loop_start, loop_end);
+ int loop_num = uid_loop_num [INSN_UID (loop_start)];
/* we change our mind only when we are sure that loop will be instrumented */
loop_can_insert_bct[loop_num] = 0;
machine has */
enum machine_mode loop_var_mode = SImode;
- int loop_num = loop_number (loop_start, loop_end);
+ int loop_num = uid_loop_num [INSN_UID (loop_start)];
/* get loop-variables. No need to check that these are valid - already
checked in analyze_loop_iterations (). */
#endif /* HAVE_decrement_and_branch_on_count */
}
-
-/* calculate the uid of the given loop */
-int
-loop_number (loop_start, loop_end)
- rtx loop_start, loop_end;
-{
- int loop_num = -1;
-
- /* assume that this insn contains the LOOP_START
- note, so it will not be changed by the loop unrolling */
- loop_num = uid_loop_num[INSN_UID (loop_start)];
- /* sanity check - should never happen */
- if (loop_num == -1)
- abort ();
-
- return loop_num;
-}
#endif /* HAIFA */
/* Scan the function and determine whether it has indirect (computed) jumps.
/* variables for interaction between unroll.c and loop.c, for
the insertion of branch-on-count instruction. */
extern rtx *loop_start_value;
-extern int loop_number();
#endif /* HAIFA */
#ifdef HAIFA
/* Fix the initial value for the loop as needed. */
if (loop_n_iterations <= 0)
- loop_start_value [loop_number (loop_start, loop_end)]
+ loop_start_value [uid_loop_num [INSN_UID (loop_start)]]
= initial_value;
#endif
}
/* Keep track of the unroll factor for each loop. */
if (unroll_type == UNROLL_COMPLETELY)
- loop_unroll_factor [loop_number (loop_start, loop_end)] = -1;
+ loop_unroll_factor [uid_loop_num [INSN_UID (loop_start)]] = -1;
else
- loop_unroll_factor [loop_number (loop_start, loop_end)] = unroll_number;
+ loop_unroll_factor [uid_loop_num [INSN_UID (loop_start)]] = unroll_number;
/* For each biv and giv, determine whether it can be safely split into