aboutsummaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorBernd Schmidt <crux@pool.informatik.rwth-aachen.de>1998-04-07 23:47:11 +0000
committerJeff Law <law@gcc.gnu.org>1998-04-07 17:47:11 -0600
commit56c0e996b8de532db95bbca19548ffb92e242a0b (patch)
tree07927d40dcf965c978d007db17fbcebbedeca47e /gcc/loop.c
parent8a63cdfc100ba67b19a2fdd2b72185adcbc4c05f (diff)
downloadgcc-56c0e996b8de532db95bbca19548ffb92e242a0b.zip
gcc-56c0e996b8de532db95bbca19548ffb92e242a0b.tar.gz
gcc-56c0e996b8de532db95bbca19548ffb92e242a0b.tar.bz2
c-lex.c (is_class_name): Delete declaration.
* c-lex.c (is_class_name): Delete declaration. (whitespace_cr): Make static and add prototype. * c-lex.h (make_pointer_declarator, reinit_parse_for_function, yylex, get_directive_line): Turn declarations into prototypes. (position_after_whitespace, check_newline, yyerror,, is_class_name, forget_protocol_qualifiers, remember_protocol_qualifiers): Add prototypes. * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add prototypes. * gencodes.c (gen_insn): Add prototype. * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split, gen_peephole): Add prototypes. * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add prototypes. * gengenrtl.c (type_from_format, accessor_from_format, special_rtx, special_format, find_formats, gendecl, genmacro, gendef, genlegend, genheader, gencode): Add prototypes. * genopinit.c (gen_insn): Add prototype. * genoutput.c (output_prologue, output_epilogue, scan_operands, process_template, validate_insn_alternatives, gen_insn, gen_peephole, gen_expand, gen_split, n_occurrences): Add prototypes. * genpeep.c (gen_peephole): Add prototype. * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop, reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg, labels_in_range_p, count_loop_regs_set, note_addr_stored, loop_reg_used_before_p, scan_loop, replace_call_address, skip_consec_insns, libcall_benefit, ignore_some_movables, force_movables, combine_movables, rtx_equal_for_loop_p, move_movables, strength_reduce, valid_initial_value_p, find_mem_givs, record_biv, check_final_value, record_giv, update_giv_derive, basic_induction_var, simplify_giv_expr, general_induction_var, consec_sets_giv, check_dbra_loop, express_from, combine_givs_p, combine_givs, product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1, last_use_this_basic_block, record_initial, update_reg_last_use, iteration_info, analyze_loop_iterations, insert_bct, instrument_loop_bct, indirect_jump_in_function_p): Turn declarations into prototypes. From-SVN: r19038
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c90
1 files changed, 45 insertions, 45 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index a3f7a8f..4d2a662 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -277,67 +277,67 @@ FILE *loop_dump_stream;
/* Forward declarations. */
-static void find_and_verify_loops ();
-static void mark_loop_jump ();
-static void prescan_loop ();
-static int reg_in_basic_block_p ();
-static int consec_sets_invariant_p ();
-static rtx libcall_other_reg ();
-static int labels_in_range_p ();
-static void count_loop_regs_set ();
-static void note_addr_stored ();
-static int loop_reg_used_before_p ();
-static void scan_loop ();
+static void find_and_verify_loops PROTO((rtx));
+static void mark_loop_jump PROTO((rtx, int));
+static void prescan_loop PROTO((rtx, rtx));
+static int reg_in_basic_block_p PROTO((rtx, rtx));
+static int consec_sets_invariant_p PROTO((rtx, int, rtx));
+static rtx libcall_other_reg PROTO((rtx, rtx));
+static int labels_in_range_p PROTO((rtx, int));
+static void count_loop_regs_set PROTO((rtx, rtx, char *, rtx *, int *, int));
+static void note_addr_stored PROTO((rtx));
+static int loop_reg_used_before_p PROTO((rtx, rtx, rtx, rtx, rtx));
+static void scan_loop PROTO((rtx, rtx, int, int));
#if 0
-static void replace_call_address ();
+static void replace_call_address PROTO(());
#endif
-static rtx skip_consec_insns ();
-static int libcall_benefit ();
-static void ignore_some_movables ();
-static void force_movables ();
-static void combine_movables ();
-static int rtx_equal_for_loop_p ();
-static void move_movables ();
-static void strength_reduce ();
-static int valid_initial_value_p ();
-static void find_mem_givs ();
-static void record_biv ();
-static void check_final_value ();
-static void record_giv ();
-static void update_giv_derive ();
-static int basic_induction_var ();
-static rtx simplify_giv_expr ();
-static int general_induction_var ();
-static int consec_sets_giv ();
-static int check_dbra_loop ();
-static rtx express_from ();
-static int combine_givs_p ();
-static void combine_givs ();
-static int product_cheap_p ();
-static int maybe_eliminate_biv ();
-static int maybe_eliminate_biv_1 ();
-static int last_use_this_basic_block ();
-static void record_initial ();
-static void update_reg_last_use ();
+static rtx skip_consec_insns PROTO((rtx, int));
+static int libcall_benefit PROTO((rtx));
+static void ignore_some_movables PROTO((struct movable *));
+static void force_movables PROTO((struct movable *));
+static void combine_movables PROTO((struct movable *, int));
+static int rtx_equal_for_loop_p PROTO((rtx, rtx, struct movable *));
+static void move_movables PROTO((struct movable *, int, int, rtx, rtx, int));
+static void strength_reduce PROTO((rtx, rtx, rtx, int, rtx, rtx, int));
+static int valid_initial_value_p PROTO((rtx, rtx, int, rtx));
+static void find_mem_givs PROTO((rtx, rtx, int, rtx, rtx));
+static void record_biv PROTO((struct induction *, rtx, rtx, rtx, rtx, int, int));
+static void check_final_value PROTO((struct induction *, rtx, rtx));
+static void record_giv PROTO((struct induction *, rtx, rtx, rtx, rtx, rtx, int, enum g_types, int, rtx *, rtx, rtx));
+static void update_giv_derive PROTO((rtx));
+static int basic_induction_var PROTO((rtx, enum machine_mode, rtx, rtx, rtx *, rtx *));
+static rtx simplify_giv_expr PROTO((rtx, int *));
+static int general_induction_var PROTO((rtx, rtx *, rtx *, rtx *));
+static int consec_sets_giv PROTO((int, rtx, rtx, rtx, rtx *, rtx *));
+static int check_dbra_loop PROTO((rtx, int, rtx));
+static rtx express_from PROTO((struct induction *, struct induction *));
+static int combine_givs_p PROTO((struct induction *, struct induction *));
+static void combine_givs PROTO((struct iv_class *));
+static int product_cheap_p PROTO((rtx, rtx));
+static int maybe_eliminate_biv PROTO((struct iv_class *, rtx, rtx, int, int, int));
+static int maybe_eliminate_biv_1 PROTO((rtx, rtx, struct iv_class *, int, rtx));
+static int last_use_this_basic_block PROTO((rtx, rtx));
+static void record_initial PROTO((rtx, rtx));
+static void update_reg_last_use PROTO((rtx, rtx));
#ifdef HAIFA
/* This is extern from unroll.c */
-void iteration_info ();
+extern void iteration_info PROTO((rtx, rtx *, rtx *, rtx, rtx));
/* Two main functions for implementing bct:
first - to be called before loop unrolling, and the second - after */
#ifdef HAVE_decrement_and_branch_on_count
-static void analyze_loop_iterations ();
-static void insert_bct ();
+static void analyze_loop_iterations PROTO((rtx, rtx));
+static void insert_bct PROTO((rtx, rtx));
/* Auxiliary function that inserts the bct pattern into the loop */
-static void instrument_loop_bct ();
+static void instrument_loop_bct PROTO((rtx, rtx, rtx));
#endif /* HAVE_decrement_and_branch_on_count */
#endif /* HAIFA */
/* Indirect_jump_in_function is computed once per function. */
int indirect_jump_in_function = 0;
-static int indirect_jump_in_function_p ();
+static int indirect_jump_in_function_p PROTO((rtx));
/* Relative gain of eliminating various kinds of operations. */