Commit 83d2b3b9 by Kaveh R. Ghazi Committed by Kaveh Ghazi

cccp.c: PROTO -> PARAMS.

	* cccp.c: PROTO -> PARAMS.
	* cexp.y: Likewise.
	* collect2.c: Likewise.
	* combine.c: Likewise.
	* convert.h: Likewise.
	* cse.c: Likewise.
	* dbxout.c: Likewise.
	* dbxout.h: Likewise.
	* diagnostic.c: Likewise.
	* doprint.c: Likewise.
	* dwarf2out.c: Likewise.
	* dwarf2out.h: Likewise.
	* dwarfout.c: Likewise.
	* dwarfout.h: Likewise.
	* dyn-string.h: Likewise.

From-SVN: r31399
parent 57bed152
2000-01-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* cccp.c: PROTO -> PARAMS.
* cexp.y: Likewise.
* collect2.c: Likewise.
* combine.c: Likewise.
* convert.h: Likewise.
* cse.c: Likewise.
* dbxout.c: Likewise.
* dbxout.h: Likewise.
* diagnostic.c: Likewise.
* doprint.c: Likewise.
* dwarf2out.c: Likewise.
* dwarf2out.h: Likewise.
* dwarfout.c: Likewise.
* dwarfout.h: Likewise.
* dyn-string.h: Likewise.
2000-01-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* calls.c (emit_call_1): Wrap varaible `struct_value_size_rtx' in
macro conditionals guarding use.
......
......@@ -43,10 +43,10 @@ struct arglist {
int argno;
};
HOST_WIDEST_INT parse_c_expression PROTO((char *, int));
HOST_WIDEST_INT parse_c_expression PARAMS ((char *, int));
static int yylex PROTO((void));
static void yyerror PVPROTO((const char *, ...))
static int yylex PARAMS ((void));
static void yyerror PARAMS ((const char *, ...))
ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
static HOST_WIDEST_INT expression_value;
#ifdef TEST_EXP_READER
......@@ -129,18 +129,18 @@ extern int c89;
struct constant;
HOST_WIDEST_INT parse_escape PROTO((char **, HOST_WIDEST_INT));
int check_assertion PROTO((U_CHAR *, int, int, struct arglist *));
struct hashnode *lookup PROTO((U_CHAR *, int, int));
void error PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
void verror PROTO((const char *, va_list));
void pedwarn PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
void warning PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
HOST_WIDEST_INT parse_escape PARAMS ((char **, HOST_WIDEST_INT));
int check_assertion PARAMS ((U_CHAR *, int, int, struct arglist *));
struct hashnode *lookup PARAMS ((U_CHAR *, int, int));
void error PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
void verror PARAMS ((const char *, va_list));
void pedwarn PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
void warning PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
static int parse_number PROTO((int));
static HOST_WIDEST_INT left_shift PROTO((struct constant *, unsigned HOST_WIDEST_INT));
static HOST_WIDEST_INT right_shift PROTO((struct constant *, unsigned HOST_WIDEST_INT));
static void integer_overflow PROTO((void));
static int parse_number PARAMS ((int));
static HOST_WIDEST_INT left_shift PARAMS ((struct constant *, unsigned HOST_WIDEST_INT));
static HOST_WIDEST_INT right_shift PARAMS ((struct constant *, unsigned HOST_WIDEST_INT));
static void integer_overflow PARAMS ((void));
/* `signedp' values */
#define SIGNED (~0)
......@@ -1919,7 +1919,7 @@ parse_c_expression (string, warn_undefined)
}
static void
yyerror VPROTO ((const char * msgid, ...))
yyerror VPARAMS ((const char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char * msgid;
......@@ -1949,9 +1949,9 @@ int pedantic;
int traditional;
int c89;
int main PROTO((int, char **));
static void initialize_random_junk PROTO((void));
static void print_unsigned_host_widest_int PROTO((unsigned HOST_WIDEST_INT));
int main PARAMS ((int, char **));
static void initialize_random_junk PARAMS ((void));
static void print_unsigned_host_widest_int PARAMS ((unsigned HOST_WIDEST_INT));
/* Main program for testing purposes. */
int
......@@ -2050,7 +2050,7 @@ initialize_random_junk ()
}
void
error VPROTO ((char * msgid, ...))
error VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......@@ -2070,7 +2070,7 @@ error VPROTO ((char * msgid, ...))
}
void
pedwarn VPROTO ((char * msgid, ...))
pedwarn VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......@@ -2090,7 +2090,7 @@ pedwarn VPROTO ((char * msgid, ...))
}
void
warning VPROTO ((char * msgid, ...))
warning VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......
/* Parse C expressions for CCCP.
Copyright (C) 1987, 92, 94-98, 1999 Free Software Foundation.
Copyright (C) 1987, 92, 94-99, 2000 Free Software Foundation.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
......@@ -47,10 +47,10 @@ struct arglist {
int argno;
};
HOST_WIDEST_INT parse_c_expression PROTO((char *, int));
HOST_WIDEST_INT parse_c_expression PARAMS ((char *, int));
static int yylex PROTO((void));
static void yyerror PVPROTO((const char *, ...))
static int yylex PARAMS ((void));
static void yyerror PARAMS ((const char *, ...))
ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
static HOST_WIDEST_INT expression_value;
#ifdef TEST_EXP_READER
......@@ -133,18 +133,18 @@ extern int c89;
struct constant;
HOST_WIDEST_INT parse_escape PROTO((char **, HOST_WIDEST_INT));
int check_assertion PROTO((U_CHAR *, int, int, struct arglist *));
struct hashnode *lookup PROTO((U_CHAR *, int, int));
void error PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
void verror PROTO((const char *, va_list));
void pedwarn PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
void warning PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1;
HOST_WIDEST_INT parse_escape PARAMS ((char **, HOST_WIDEST_INT));
int check_assertion PARAMS ((U_CHAR *, int, int, struct arglist *));
struct hashnode *lookup PARAMS ((U_CHAR *, int, int));
void error PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
void verror PARAMS ((const char *, va_list));
void pedwarn PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
void warning PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
static int parse_number PROTO((int));
static HOST_WIDEST_INT left_shift PROTO((struct constant *, unsigned HOST_WIDEST_INT));
static HOST_WIDEST_INT right_shift PROTO((struct constant *, unsigned HOST_WIDEST_INT));
static void integer_overflow PROTO((void));
static int parse_number PARAMS ((int));
static HOST_WIDEST_INT left_shift PARAMS ((struct constant *, unsigned HOST_WIDEST_INT));
static HOST_WIDEST_INT right_shift PARAMS ((struct constant *, unsigned HOST_WIDEST_INT));
static void integer_overflow PARAMS ((void));
/* `signedp' values */
#define SIGNED (~0)
......@@ -1003,7 +1003,7 @@ parse_c_expression (string, warn_undefined)
}
static void
yyerror VPROTO ((const char * msgid, ...))
yyerror VPARAMS ((const char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char * msgid;
......@@ -1033,9 +1033,9 @@ int pedantic;
int traditional;
int c89;
int main PROTO((int, char **));
static void initialize_random_junk PROTO((void));
static void print_unsigned_host_widest_int PROTO((unsigned HOST_WIDEST_INT));
int main PARAMS ((int, char **));
static void initialize_random_junk PARAMS ((void));
static void print_unsigned_host_widest_int PARAMS ((unsigned HOST_WIDEST_INT));
/* Main program for testing purposes. */
int
......@@ -1134,7 +1134,7 @@ initialize_random_junk ()
}
void
error VPROTO ((char * msgid, ...))
error VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......@@ -1154,7 +1154,7 @@ error VPROTO ((char * msgid, ...))
}
void
pedwarn VPROTO ((char * msgid, ...))
pedwarn VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......@@ -1174,7 +1174,7 @@ pedwarn VPROTO ((char * msgid, ...))
}
void
warning VPROTO ((char * msgid, ...))
warning VPARAMS ((char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
char * msgid;
......
......@@ -263,43 +263,43 @@ static struct path_prefix *libpaths[3] = {&cmdline_lib_dirs,
static const char *libexts[3] = {"a", "so", NULL}; /* possible library extentions */
#endif
static void handler PROTO((int));
static int is_ctor_dtor PROTO((const char *));
static char *find_a_file PROTO((struct path_prefix *, const char *));
static void add_prefix PROTO((struct path_prefix *, const char *));
static void prefix_from_env PROTO((const char *, struct path_prefix *));
static void prefix_from_string PROTO((const char *, struct path_prefix *));
static void do_wait PROTO((const char *));
static void fork_execute PROTO((const char *, char **));
static void maybe_unlink PROTO((const char *));
static void add_to_list PROTO((struct head *, const char *));
static int extract_init_priority PROTO((const char *));
static void sort_ids PROTO((struct head *));
static void write_list PROTO((FILE *, const char *, struct id *));
static void handler PARAMS ((int));
static int is_ctor_dtor PARAMS ((const char *));
static char *find_a_file PARAMS ((struct path_prefix *, const char *));
static void add_prefix PARAMS ((struct path_prefix *, const char *));
static void prefix_from_env PARAMS ((const char *, struct path_prefix *));
static void prefix_from_string PARAMS ((const char *, struct path_prefix *));
static void do_wait PARAMS ((const char *));
static void fork_execute PARAMS ((const char *, char **));
static void maybe_unlink PARAMS ((const char *));
static void add_to_list PARAMS ((struct head *, const char *));
static int extract_init_priority PARAMS ((const char *));
static void sort_ids PARAMS ((struct head *));
static void write_list PARAMS ((FILE *, const char *, struct id *));
#ifdef COLLECT_EXPORT_LIST
static void dump_list PROTO((FILE *, const char *, struct id *));
static void dump_list PARAMS ((FILE *, const char *, struct id *));
#endif
#if 0
static void dump_prefix_list PROTO((FILE *, const char *, struct prefix_list *));
static void dump_prefix_list PARAMS ((FILE *, const char *, struct prefix_list *));
#endif
static void write_list_with_asm PROTO((FILE *, const char *, struct id *));
static void write_c_file PROTO((FILE *, const char *));
static void write_c_file_stat PROTO((FILE *, const char *));
static void write_list_with_asm PARAMS ((FILE *, const char *, struct id *));
static void write_c_file PARAMS ((FILE *, const char *));
static void write_c_file_stat PARAMS ((FILE *, const char *));
#ifndef LD_INIT_SWITCH
static void write_c_file_glob PROTO((FILE *, const char *));
static void write_c_file_glob PARAMS ((FILE *, const char *));
#endif
static void scan_prog_file PROTO((const char *, enum pass));
static void scan_prog_file PARAMS ((const char *, enum pass));
#ifdef SCAN_LIBRARIES
static void scan_libraries PROTO((const char *));
static void scan_libraries PARAMS ((const char *));
#endif
#ifdef COLLECT_EXPORT_LIST
static int is_in_list PROTO((const char *, struct id *));
static void write_aix_file PROTO((FILE *, struct id *));
static char *resolve_lib_name PROTO((const char *));
static int use_import_list PROTO((const char *));
static int ignore_library PROTO((const char *));
static int is_in_list PARAMS ((const char *, struct id *));
static void write_aix_file PARAMS ((FILE *, struct id *));
static char *resolve_lib_name PARAMS ((const char *));
static int use_import_list PARAMS ((const char *));
static int ignore_library PARAMS ((const char *));
#endif
static char *extract_string PROTO((const char **));
static char *extract_string PARAMS ((const char **));
#ifdef NO_DUP2
int
......@@ -358,7 +358,7 @@ collect_exit (status)
/* Notify user of a non-error. */
void
notice VPROTO((const char *msgid, ...))
notice VPARAMS ((const char *msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msgid;
......@@ -378,7 +378,7 @@ notice VPROTO((const char *msgid, ...))
/* Die when sys call fails. */
void
fatal_perror VPROTO((const char * msgid, ...))
fatal_perror VPARAMS ((const char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msgid;
......@@ -403,7 +403,7 @@ fatal_perror VPROTO((const char * msgid, ...))
/* Just die. */
void
fatal VPROTO((const char * msgid, ...))
fatal VPARAMS ((const char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msgid;
......@@ -427,7 +427,7 @@ fatal VPROTO((const char * msgid, ...))
/* Write error message. */
void
error VPROTO((const char * msgid, ...))
error VPARAMS ((const char * msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char * msgid;
......@@ -832,7 +832,7 @@ prefix_from_string (p, pprefix)
/* Main program. */
int main PROTO ((int, char *[]));
int main PARAMS ((int, char *[]));
int
main (argc, argv)
int argc;
......@@ -2111,8 +2111,8 @@ scan_prog_file (prog_name, which_pass)
const char *prog_name;
enum pass which_pass;
{
void (*int_handler) PROTO ((int));
void (*quit_handler) PROTO ((int));
void (*int_handler) PARAMS ((int));
void (*quit_handler) PARAMS ((int));
char *real_nm_argv[4];
const char **nm_argv = (const char **) real_nm_argv;
int pid;
......@@ -2179,9 +2179,9 @@ scan_prog_file (prog_name, which_pass)
}
/* Parent context from here on. */
int_handler = (void (*) PROTO ((int))) signal (SIGINT, SIG_IGN);
int_handler = (void (*) PARAMS ((int))) signal (SIGINT, SIG_IGN);
#ifdef SIGQUIT
quit_handler = (void (*) PROTO ((int))) signal (SIGQUIT, SIG_IGN);
quit_handler = (void (*) PARAMS ((int))) signal (SIGQUIT, SIG_IGN);
#endif
if (close (pipe_fd[1]) < 0)
......@@ -2296,7 +2296,7 @@ struct head libraries;
/* Map the file indicated by NAME into memory and store its address. */
static void mapfile PROTO ((const char *));
static void mapfile PARAMS ((const char *));
static void
mapfile (name)
......@@ -2322,7 +2322,7 @@ mapfile (name)
static const char *libname;
static int libselect PROTO ((struct direct *));
static int libselect PARAMS ((struct direct *));
static int
libselect (d)
......@@ -2338,7 +2338,7 @@ libselect (d)
We must verify that the extension is numeric, because Sun saves the
original versions of patched libraries with a .FCS extension. Files with
invalid extensions must go last in the sort, so that they will not be used. */
static int libcompare PROTO ((struct direct **, struct direct **));
static int libcompare PARAMS ((struct direct **, struct direct **));
static int
libcompare (d1, d2)
......@@ -2383,7 +2383,7 @@ libcompare (d1, d2)
/* Given the name NAME of a dynamic dependency, find its pathname and add
it to the list of libraries. */
static void locatelib PROTO ((const char *));
static void locatelib PARAMS ((const char *));
static void
locatelib (name)
......@@ -2556,8 +2556,8 @@ scan_libraries (prog_name)
{
static struct head libraries; /* list of shared libraries found */
struct id *list;
void (*int_handler) PROTO ((int));
void (*quit_handler) PROTO ((int));
void (*int_handler) PARAMS ((int));
void (*quit_handler) PARAMS ((int));
char *real_ldd_argv[4];
const char **ldd_argv = (const char **) real_ldd_argv;
int pid;
......@@ -2621,9 +2621,9 @@ scan_libraries (prog_name)
}
/* Parent context from here on. */
int_handler = (void (*) PROTO ((int))) signal (SIGINT, SIG_IGN);
int_handler = (void (*) PARAMS ((int))) signal (SIGINT, SIG_IGN);
#ifdef SIGQUIT
quit_handler = (void (*) PROTO ((int))) signal (SIGQUIT, SIG_IGN);
quit_handler = (void (*) PARAMS ((int))) signal (SIGQUIT, SIG_IGN);
#endif
if (close (pipe_fd[1]) < 0)
......@@ -3073,13 +3073,13 @@ struct file_info
extern int decode_mach_o_hdr ();
extern int encode_mach_o_hdr ();
static void add_func_table PROTO((mo_header_t *, load_all_t *,
static void add_func_table PARAMS ((mo_header_t *, load_all_t *,
symbol_info_t *, int));
static void print_header PROTO((mo_header_t *));
static void print_load_command PROTO((load_union_t *, size_t, int));
static void bad_header PROTO((int));
static struct file_info *read_file PROTO((const char *, int, int));
static void end_file PROTO((struct file_info *));
static void print_header PARAMS ((mo_header_t *));
static void print_load_command PARAMS ((load_union_t *, size_t, int));
static void bad_header PARAMS ((int));
static struct file_info *read_file PARAMS ((const char *, int, int));
static void end_file PARAMS ((struct file_info *));
/* OSF/rose specific version to scan the name list of the loaded
program for the symbols g++ uses for static constructors and
......
......@@ -350,73 +350,73 @@ static struct undobuf undobuf;
static int n_occurrences;
static void do_SUBST PROTO((rtx *, rtx));
static void do_SUBST_INT PROTO((int *, int));
static void init_reg_last_arrays PROTO((void));
static void setup_incoming_promotions PROTO((void));
static void set_nonzero_bits_and_sign_copies PROTO((rtx, rtx, void *));
static int can_combine_p PROTO((rtx, rtx, rtx, rtx, rtx *, rtx *));
static int sets_function_arg_p PROTO((rtx));
static int combinable_i3pat PROTO((rtx, rtx *, rtx, rtx, int, rtx *));
static int contains_muldiv PROTO((rtx));
static rtx try_combine PROTO((rtx, rtx, rtx));
static void undo_all PROTO((void));
static void undo_commit PROTO((void));
static rtx *find_split_point PROTO((rtx *, rtx));
static rtx subst PROTO((rtx, rtx, rtx, int, int));
static rtx combine_simplify_rtx PROTO((rtx, enum machine_mode, int, int));
static rtx simplify_if_then_else PROTO((rtx));
static rtx simplify_set PROTO((rtx));
static rtx simplify_logical PROTO((rtx, int));
static rtx expand_compound_operation PROTO((rtx));
static rtx expand_field_assignment PROTO((rtx));
static rtx make_extraction PROTO((enum machine_mode, rtx, int, rtx, int,
int, int, int));
static rtx extract_left_shift PROTO((rtx, int));
static rtx make_compound_operation PROTO((rtx, enum rtx_code));
static int get_pos_from_mask PROTO((unsigned HOST_WIDE_INT, int *));
static rtx force_to_mode PROTO((rtx, enum machine_mode,
unsigned HOST_WIDE_INT, rtx, int));
static rtx if_then_else_cond PROTO((rtx, rtx *, rtx *));
static rtx known_cond PROTO((rtx, enum rtx_code, rtx, rtx));
static int rtx_equal_for_field_assignment_p PROTO((rtx, rtx));
static rtx make_field_assignment PROTO((rtx));
static rtx apply_distributive_law PROTO((rtx));
static rtx simplify_and_const_int PROTO((rtx, enum machine_mode, rtx,
unsigned HOST_WIDE_INT));
static unsigned HOST_WIDE_INT nonzero_bits PROTO((rtx, enum machine_mode));
static int num_sign_bit_copies PROTO((rtx, enum machine_mode));
static int merge_outer_ops PROTO((enum rtx_code *, HOST_WIDE_INT *,
enum rtx_code, HOST_WIDE_INT,
enum machine_mode, int *));
static rtx simplify_shift_const PROTO((rtx, enum rtx_code, enum machine_mode,
rtx, int));
static int recog_for_combine PROTO((rtx *, rtx, rtx *));
static rtx gen_lowpart_for_combine PROTO((enum machine_mode, rtx));
static rtx gen_rtx_combine PVPROTO((enum rtx_code code, enum machine_mode mode,
...));
static rtx gen_binary PROTO((enum rtx_code, enum machine_mode,
rtx, rtx));
static rtx gen_unary PROTO((enum rtx_code, enum machine_mode,
enum machine_mode, rtx));
static enum rtx_code simplify_comparison PROTO((enum rtx_code, rtx *, rtx *));
static int reversible_comparison_p PROTO((rtx));
static void update_table_tick PROTO((rtx));
static void record_value_for_reg PROTO((rtx, rtx, rtx));
static void check_promoted_subreg PROTO((rtx, rtx));
static void record_dead_and_set_regs_1 PROTO((rtx, rtx, void *));
static void record_dead_and_set_regs PROTO((rtx));
static int get_last_value_validate PROTO((rtx *, rtx, int, int));
static rtx get_last_value PROTO((rtx));
static int use_crosses_set_p PROTO((rtx, int));
static void reg_dead_at_p_1 PROTO((rtx, rtx, void *));
static int reg_dead_at_p PROTO((rtx, rtx));
static void move_deaths PROTO((rtx, rtx, int, rtx, rtx *));
static int reg_bitfield_target_p PROTO((rtx, rtx));
static void distribute_notes PROTO((rtx, rtx, rtx, rtx, rtx, rtx));
static void distribute_links PROTO((rtx));
static void mark_used_regs_combine PROTO((rtx));
static int insn_cuid PROTO((rtx));
static void do_SUBST PARAMS ((rtx *, rtx));
static void do_SUBST_INT PARAMS ((int *, int));
static void init_reg_last_arrays PARAMS ((void));
static void setup_incoming_promotions PARAMS ((void));
static void set_nonzero_bits_and_sign_copies PARAMS ((rtx, rtx, void *));
static int can_combine_p PARAMS ((rtx, rtx, rtx, rtx, rtx *, rtx *));
static int sets_function_arg_p PARAMS ((rtx));
static int combinable_i3pat PARAMS ((rtx, rtx *, rtx, rtx, int, rtx *));
static int contains_muldiv PARAMS ((rtx));
static rtx try_combine PARAMS ((rtx, rtx, rtx));
static void undo_all PARAMS ((void));
static void undo_commit PARAMS ((void));
static rtx *find_split_point PARAMS ((rtx *, rtx));
static rtx subst PARAMS ((rtx, rtx, rtx, int, int));
static rtx combine_simplify_rtx PARAMS ((rtx, enum machine_mode, int, int));
static rtx simplify_if_then_else PARAMS ((rtx));
static rtx simplify_set PARAMS ((rtx));
static rtx simplify_logical PARAMS ((rtx, int));
static rtx expand_compound_operation PARAMS ((rtx));
static rtx expand_field_assignment PARAMS ((rtx));
static rtx make_extraction PARAMS ((enum machine_mode, rtx, int, rtx, int,
int, int, int));
static rtx extract_left_shift PARAMS ((rtx, int));
static rtx make_compound_operation PARAMS ((rtx, enum rtx_code));
static int get_pos_from_mask PARAMS ((unsigned HOST_WIDE_INT, int *));
static rtx force_to_mode PARAMS ((rtx, enum machine_mode,
unsigned HOST_WIDE_INT, rtx, int));
static rtx if_then_else_cond PARAMS ((rtx, rtx *, rtx *));
static rtx known_cond PARAMS ((rtx, enum rtx_code, rtx, rtx));
static int rtx_equal_for_field_assignment_p PARAMS ((rtx, rtx));
static rtx make_field_assignment PARAMS ((rtx));
static rtx apply_distributive_law PARAMS ((rtx));
static rtx simplify_and_const_int PARAMS ((rtx, enum machine_mode, rtx,
unsigned HOST_WIDE_INT));
static unsigned HOST_WIDE_INT nonzero_bits PARAMS ((rtx, enum machine_mode));
static int num_sign_bit_copies PARAMS ((rtx, enum machine_mode));
static int merge_outer_ops PARAMS ((enum rtx_code *, HOST_WIDE_INT *,
enum rtx_code, HOST_WIDE_INT,
enum machine_mode, int *));
static rtx simplify_shift_const PARAMS ((rtx, enum rtx_code, enum machine_mode,
rtx, int));
static int recog_for_combine PARAMS ((rtx *, rtx, rtx *));
static rtx gen_lowpart_for_combine PARAMS ((enum machine_mode, rtx));
static rtx gen_rtx_combine PARAMS ((enum rtx_code code, enum machine_mode mode,
...));
static rtx gen_binary PARAMS ((enum rtx_code, enum machine_mode,
rtx, rtx));
static rtx gen_unary PARAMS ((enum rtx_code, enum machine_mode,
enum machine_mode, rtx));
static enum rtx_code simplify_comparison PARAMS ((enum rtx_code, rtx *, rtx *));
static int reversible_comparison_p PARAMS ((rtx));
static void update_table_tick PARAMS ((rtx));
static void record_value_for_reg PARAMS ((rtx, rtx, rtx));
static void check_promoted_subreg PARAMS ((rtx, rtx));
static void record_dead_and_set_regs_1 PARAMS ((rtx, rtx, void *));
static void record_dead_and_set_regs PARAMS ((rtx));
static int get_last_value_validate PARAMS ((rtx *, rtx, int, int));
static rtx get_last_value PARAMS ((rtx));
static int use_crosses_set_p PARAMS ((rtx, int));
static void reg_dead_at_p_1 PARAMS ((rtx, rtx, void *));
static int reg_dead_at_p PARAMS ((rtx, rtx));
static void move_deaths PARAMS ((rtx, rtx, int, rtx, rtx *));
static int reg_bitfield_target_p PARAMS ((rtx, rtx));
static void distribute_notes PARAMS ((rtx, rtx, rtx, rtx, rtx, rtx));
static void distribute_links PARAMS ((rtx));
static void mark_used_regs_combine PARAMS ((rtx));
static int insn_cuid PARAMS ((rtx));
/* Substitute NEWVAL, an rtx expression, into INTO, a place in some
insn. The substitution can be undone by undo_all. If INTO is already
......@@ -9595,7 +9595,7 @@ gen_lowpart_for_combine (mode, x)
/*VARARGS2*/
static rtx
gen_rtx_combine VPROTO((enum rtx_code code, enum machine_mode mode, ...))
gen_rtx_combine VPARAMS ((enum rtx_code code, enum machine_mode mode, ...))
{
#ifndef ANSI_PROTOTYPES
enum rtx_code code;
......
/* Definition of functions in convert.c.
Copyright (C) 1993 Free Software Foundation, Inc.
Copyright (C) 1993, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
......@@ -18,7 +18,7 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
extern tree convert_to_integer PROTO ((tree, tree));
extern tree convert_to_pointer PROTO ((tree, tree));
extern tree convert_to_real PROTO ((tree, tree));
extern tree convert_to_complex PROTO ((tree, tree));
extern tree convert_to_integer PARAMS ((tree, tree));
extern tree convert_to_pointer PARAMS ((tree, tree));
extern tree convert_to_real PARAMS ((tree, tree));
extern tree convert_to_complex PARAMS ((tree, tree));
......@@ -645,57 +645,57 @@ struct cse_basic_block_data
|| XEXP (X, 0) == virtual_outgoing_args_rtx)) \
|| GET_CODE (X) == ADDRESSOF)
static int notreg_cost PROTO((rtx));
static void new_basic_block PROTO((void));
static void make_new_qty PROTO((int, enum machine_mode));
static void make_regs_eqv PROTO((int, int));
static void delete_reg_equiv PROTO((int));
static int mention_regs PROTO((rtx));
static int insert_regs PROTO((rtx, struct table_elt *, int));
static void remove_from_table PROTO((struct table_elt *, unsigned));
static struct table_elt *lookup PROTO((rtx, unsigned, enum machine_mode)),
*lookup_for_remove PROTO((rtx, unsigned, enum machine_mode));
static rtx lookup_as_function PROTO((rtx, enum rtx_code));
static struct table_elt *insert PROTO((rtx, struct table_elt *, unsigned,
enum machine_mode));
static void merge_equiv_classes PROTO((struct table_elt *,
struct table_elt *));
static void invalidate PROTO((rtx, enum machine_mode));
static int cse_rtx_varies_p PROTO((rtx));
static void remove_invalid_refs PROTO((int));
static void remove_invalid_subreg_refs PROTO((int, int, enum machine_mode));
static void rehash_using_reg PROTO((rtx));
static void invalidate_memory PROTO((void));
static void invalidate_for_call PROTO((void));
static rtx use_related_value PROTO((rtx, struct table_elt *));
static unsigned canon_hash PROTO((rtx, enum machine_mode));
static unsigned safe_hash PROTO((rtx, enum machine_mode));
static int exp_equiv_p PROTO((rtx, rtx, int, int));
static rtx canon_reg PROTO((rtx, rtx));
static void find_best_addr PROTO((rtx, rtx *));
static enum rtx_code find_comparison_args PROTO((enum rtx_code, rtx *, rtx *,
enum machine_mode *,
enum machine_mode *));
static rtx fold_rtx PROTO((rtx, rtx));
static rtx equiv_constant PROTO((rtx));
static void record_jump_equiv PROTO((rtx, int));
static void record_jump_cond PROTO((enum rtx_code, enum machine_mode,
rtx, rtx, int));
static void cse_insn PROTO((rtx, rtx));
static int addr_affects_sp_p PROTO((rtx));
static void invalidate_from_clobbers PROTO((rtx));
static rtx cse_process_notes PROTO((rtx, rtx));
static void cse_around_loop PROTO((rtx));
static void invalidate_skipped_set PROTO((rtx, rtx, void *));
static void invalidate_skipped_block PROTO((rtx));
static void cse_check_loop_start PROTO((rtx, rtx, void *));
static void cse_set_around_loop PROTO((rtx, rtx, rtx));
static rtx cse_basic_block PROTO((rtx, rtx, struct branch_path *, int));
static void count_reg_usage PROTO((rtx, int *, rtx, int));
extern void dump_class PROTO((struct table_elt*));
static struct cse_reg_info* get_cse_reg_info PROTO((int));
static void flush_hash_table PROTO((void));
static int notreg_cost PARAMS ((rtx));
static void new_basic_block PARAMS ((void));
static void make_new_qty PARAMS ((int, enum machine_mode));
static void make_regs_eqv PARAMS ((int, int));
static void delete_reg_equiv PARAMS ((int));
static int mention_regs PARAMS ((rtx));
static int insert_regs PARAMS ((rtx, struct table_elt *, int));
static void remove_from_table PARAMS ((struct table_elt *, unsigned));
static struct table_elt *lookup PARAMS ((rtx, unsigned, enum machine_mode)),
*lookup_for_remove PARAMS ((rtx, unsigned, enum machine_mode));
static rtx lookup_as_function PARAMS ((rtx, enum rtx_code));
static struct table_elt *insert PARAMS ((rtx, struct table_elt *, unsigned,
enum machine_mode));
static void merge_equiv_classes PARAMS ((struct table_elt *,
struct table_elt *));
static void invalidate PARAMS ((rtx, enum machine_mode));
static int cse_rtx_varies_p PARAMS ((rtx));
static void remove_invalid_refs PARAMS ((int));
static void remove_invalid_subreg_refs PARAMS ((int, int, enum machine_mode));
static void rehash_using_reg PARAMS ((rtx));
static void invalidate_memory PARAMS ((void));
static void invalidate_for_call PARAMS ((void));
static rtx use_related_value PARAMS ((rtx, struct table_elt *));
static unsigned canon_hash PARAMS ((rtx, enum machine_mode));
static unsigned safe_hash PARAMS ((rtx, enum machine_mode));
static int exp_equiv_p PARAMS ((rtx, rtx, int, int));
static rtx canon_reg PARAMS ((rtx, rtx));
static void find_best_addr PARAMS ((rtx, rtx *));
static enum rtx_code find_comparison_args PARAMS ((enum rtx_code, rtx *, rtx *,
enum machine_mode *,
enum machine_mode *));
static rtx fold_rtx PARAMS ((rtx, rtx));
static rtx equiv_constant PARAMS ((rtx));
static void record_jump_equiv PARAMS ((rtx, int));
static void record_jump_cond PARAMS ((enum rtx_code, enum machine_mode,
rtx, rtx, int));
static void cse_insn PARAMS ((rtx, rtx));
static int addr_affects_sp_p PARAMS ((rtx));
static void invalidate_from_clobbers PARAMS ((rtx));
static rtx cse_process_notes PARAMS ((rtx, rtx));
static void cse_around_loop PARAMS ((rtx));
static void invalidate_skipped_set PARAMS ((rtx, rtx, void *));
static void invalidate_skipped_block PARAMS ((rtx));
static void cse_check_loop_start PARAMS ((rtx, rtx, void *));
static void cse_set_around_loop PARAMS ((rtx, rtx, rtx));
static rtx cse_basic_block PARAMS ((rtx, rtx, struct branch_path *, int));
static void count_reg_usage PARAMS ((rtx, int *, rtx, int));
extern void dump_class PARAMS ((struct table_elt*));
static struct cse_reg_info* get_cse_reg_info PARAMS ((int));
static void flush_hash_table PARAMS ((void));
/* Dump the expressions in the equivalence class indicated by CLASSP.
This function is used only for debugging. */
......
/* Output dbx-format symbol table information from GNU compiler.
Copyright (C) 1987, 88, 92-97, 1998 Free Software Foundation, Inc.
Copyright (C) 1987, 88, 92-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
......@@ -320,27 +320,27 @@ static int current_sym_nchars;
#endif
#if defined(ASM_OUTPUT_SECTION_NAME)
static void dbxout_function_end PROTO((void));
static void dbxout_function_end PARAMS ((void));
#endif
static void dbxout_typedefs PROTO((tree));
static void dbxout_type_index PROTO((tree));
static void dbxout_typedefs PARAMS ((tree));
static void dbxout_type_index PARAMS ((tree));
#if DBX_CONTIN_LENGTH > 0
static void dbxout_continue PROTO((void));
#endif
static void dbxout_type_fields PROTO((tree));
static void dbxout_type_method_1 PROTO((tree, const char *));
static void dbxout_type_methods PROTO((tree));
static void dbxout_range_type PROTO((tree));
static void dbxout_type PROTO((tree, int, int));
static void print_int_cst_octal PROTO((tree));
static void print_octal PROTO((unsigned HOST_WIDE_INT, int));
static void dbxout_type_name PROTO((tree));
static void dbxout_symbol_location PROTO((tree, tree, const char *, rtx));
static void dbxout_symbol_name PROTO((tree, const char *, int));
static void dbxout_prepare_symbol PROTO((tree));
static void dbxout_finish_symbol PROTO((tree));
static void dbxout_block PROTO((tree, int, tree));
static void dbxout_really_begin_function PROTO((tree));
static void dbxout_continue PARAMS ((void));
#endif
static void dbxout_type_fields PARAMS ((tree));
static void dbxout_type_method_1 PARAMS ((tree, const char *));
static void dbxout_type_methods PARAMS ((tree));
static void dbxout_range_type PARAMS ((tree));
static void dbxout_type PARAMS ((tree, int, int));
static void print_int_cst_octal PARAMS ((tree));
static void print_octal PARAMS ((unsigned HOST_WIDE_INT, int));
static void dbxout_type_name PARAMS ((tree));
static void dbxout_symbol_location PARAMS ((tree, tree, const char *, rtx));
static void dbxout_symbol_name PARAMS ((tree, const char *, int));
static void dbxout_prepare_symbol PARAMS ((tree));
static void dbxout_finish_symbol PARAMS ((tree));
static void dbxout_block PARAMS ((tree, int, tree));
static void dbxout_really_begin_function PARAMS ((tree));
#if defined(ASM_OUTPUT_SECTION_NAME)
static void
......
/* dbxout.h - Various declarations for functions found in dbxout.c
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
......@@ -18,19 +18,19 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
extern void dbxout_init PROTO ((FILE *, const char *, tree));
extern void dbxout_finish PROTO ((FILE *, const char *));
extern void dbxout_init PARAMS ((FILE *, const char *, tree));
extern void dbxout_finish PARAMS ((FILE *, const char *));
extern void dbxout_start_new_source_file PROTO ((const char *));
extern void dbxout_resume_previous_source_file PROTO ((void));
extern void dbxout_start_new_source_file PARAMS ((const char *));
extern void dbxout_resume_previous_source_file PARAMS ((void));
extern void dbxout_source_file PROTO ((FILE *, const char *));
extern void dbxout_types PROTO ((tree));
extern void dbxout_args PROTO ((tree));
extern void dbxout_symbol PROTO ((tree, int));
extern void dbxout_parms PROTO ((tree));
extern void dbxout_reg_parms PROTO ((tree));
extern void dbxout_syms PROTO ((tree));
extern void dbxout_function PROTO ((tree));
extern void dbxout_source_line PROTO ((FILE *, const char *, int));
extern void dbxout_begin_function PROTO ((tree));
extern void dbxout_source_file PARAMS ((FILE *, const char *));
extern void dbxout_types PARAMS ((tree));
extern void dbxout_args PARAMS ((tree));
extern void dbxout_symbol PARAMS ((tree, int));
extern void dbxout_parms PARAMS ((tree));
extern void dbxout_reg_parms PARAMS ((tree));
extern void dbxout_syms PARAMS ((tree));
extern void dbxout_function PARAMS ((tree));
extern void dbxout_source_line PARAMS ((FILE *, const char *, int));
extern void dbxout_begin_function PARAMS ((tree));
/* Provide a version _doprnt in terms of fprintf.
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 3/29/98
This program is free software; you can redistribute it and/or modify it
......@@ -204,10 +204,10 @@ _doprnt (format, ap, stream)
fflush(stdin); \
} while (0)
static int checkit PVPROTO ((const char * format, ...)) ATTRIBUTE_PRINTF_1;
static int checkit PARAMS ((const char * format, ...)) ATTRIBUTE_PRINTF_1;
static int
checkit VPROTO ((const char* format, ...))
checkit VPARAMS ((const char* format, ...))
{
va_list args;
int result;
......
/* dwarf2out.h - Various declarations for functions found in dwarf2out.c
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
......@@ -18,24 +18,24 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
extern void dwarf2out_init PROTO ((FILE *asm_out_file,
char *main_input_filename));
extern void dwarf2out_finish PROTO ((void));
extern void dwarf2out_define PROTO ((unsigned, const char *));
extern void dwarf2out_undef PROTO ((unsigned, const char *));
extern void dwarf2out_start_source_file PROTO ((const char *));
extern void dwarf2out_end_source_file PROTO ((void));
extern void dwarf2out_begin_block PROTO ((unsigned));
extern void dwarf2out_end_block PROTO ((unsigned));
extern void dwarf2out_label PROTO ((rtx));
extern void dwarf2out_decl PROTO ((tree));
extern void dwarf2out_line PROTO ((const char *, unsigned));
extern void dwarf2out_frame_init PROTO ((void));
extern void dwarf2out_frame_debug PROTO ((rtx));
extern void dwarf2out_frame_finish PROTO ((void));
extern void debug_dwarf PROTO ((void));
extern void dwarf2out_init PARAMS ((FILE *asm_out_file,
char *main_input_filename));
extern void dwarf2out_finish PARAMS ((void));
extern void dwarf2out_define PARAMS ((unsigned, const char *));
extern void dwarf2out_undef PARAMS ((unsigned, const char *));
extern void dwarf2out_start_source_file PARAMS ((const char *));
extern void dwarf2out_end_source_file PARAMS ((void));
extern void dwarf2out_begin_block PARAMS ((unsigned));
extern void dwarf2out_end_block PARAMS ((unsigned));
extern void dwarf2out_label PARAMS ((rtx));
extern void dwarf2out_decl PARAMS ((tree));
extern void dwarf2out_line PARAMS ((const char *, unsigned));
extern void dwarf2out_frame_init PARAMS ((void));
extern void dwarf2out_frame_debug PARAMS ((rtx));
extern void dwarf2out_frame_finish PARAMS ((void));
extern void debug_dwarf PARAMS ((void));
struct die_struct;
extern void debug_dwarf_die PROTO ((struct die_struct *));
extern void debug_dwarf_die PARAMS ((struct die_struct *));
/* dwarfout.h - Various declarations for functions found in dwarfout.c
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
......@@ -18,25 +18,25 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
extern void dwarfout_init PROTO ((FILE *asm_out_file,
extern void dwarfout_init PARAMS ((FILE *asm_out_file,
char *main_input_filename));
extern void dwarfout_finish PROTO ((void));
extern void dwarfout_finish PARAMS ((void));
extern void dwarfout_define PROTO ((unsigned, const char *));
extern void dwarfout_undef PROTO ((unsigned, const char *));
extern void dwarfout_file_scope_decl PROTO ((tree , int));
extern void dwarfout_start_new_source_file PROTO ((const char *));
extern void dwarfout_resume_previous_source_file PROTO((unsigned));
extern void dwarfout_define PARAMS ((unsigned, const char *));
extern void dwarfout_undef PARAMS ((unsigned, const char *));
extern void dwarfout_file_scope_decl PARAMS ((tree , int));
extern void dwarfout_start_new_source_file PARAMS ((const char *));
extern void dwarfout_resume_previous_source_file PARAMS ((unsigned));
extern void dwarfout_begin_function PROTO ((void));
extern void dwarfout_end_function PROTO ((void));
extern void dwarfout_begin_epilogue PROTO ((void));
extern void dwarfout_end_epilogue PROTO ((void));
extern void dwarfout_begin_block PROTO ((unsigned));
extern void dwarfout_end_block PROTO ((unsigned));
extern void dwarfout_begin_function PARAMS ((void));
extern void dwarfout_end_function PARAMS ((void));
extern void dwarfout_begin_epilogue PARAMS ((void));
extern void dwarfout_end_epilogue PARAMS ((void));
extern void dwarfout_begin_block PARAMS ((unsigned));
extern void dwarfout_end_block PARAMS ((unsigned));
#ifdef RTX_CODE
extern void dwarfout_label PROTO ((rtx));
extern void dwarfout_label PARAMS ((rtx));
#endif
extern void dwarfout_line PROTO ((const char *, unsigned));
extern void dwarfout_line PARAMS ((const char *, unsigned));
/* An abstract string datatype.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Mark Mitchell (mark@markmitchell.com).
This file is part of GNU CC.
......@@ -27,7 +27,7 @@ typedef struct dyn_string
char *s; /* The string itself, NUL-terminated. */
}* dyn_string_t;
extern dyn_string_t dyn_string_new PROTO((int));
extern void dyn_string_delete PROTO((dyn_string_t));
extern dyn_string_t dyn_string_append PROTO((dyn_string_t, const char*));
extern dyn_string_t dyn_string_resize PROTO((dyn_string_t, int));
extern dyn_string_t dyn_string_new PARAMS ((int));
extern void dyn_string_delete PARAMS ((dyn_string_t));
extern dyn_string_t dyn_string_append PARAMS ((dyn_string_t, const char*));
extern dyn_string_t dyn_string_resize PARAMS ((dyn_string_t, int));
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment