cpplib.c (if_directive_nameo): Add static prototype.

* cpplib.c (if_directive_nameo): Add static prototype.

	* cse.c (cse_insn): Remove unused variable `p'.

	* except.c (create_rethrow_ref, push_entry,
	receive_exception_label, new_eh_region_entry, find_func_region,
	clear_function_eh_region, process_nestinfo): Add static prototypes.
	(get_reg_for_handler): Hide definition.
	(process_nestinfo): Initialize variable `extra_handlers'.

	* expr.h (expand_builtin_longjmp): Add extern prototype.

	* final.c (final_addr_vec_align, align_fuzz): Add static prototypes.

	* function.c (prepare_function_start): Likewise.
	(pop_function_context_from): Mark parameter `context' with
	ATTRIBUTE_UNUSED.
	(push_temp_slots_for_block, flush_addressof): Hide definition.

	* gcov.c (init_arc, reverse_arcs, create_program_flow_graph,
	solve_program_flow_graph, calculate_branch_probs,
	function_summary, main, fancy_abort): Add prototypes.

	* gen-protos.c (add_hash, parse_fn_proto, main): Likewise.
	(add_hash): Constify a char*.

	* ggc-common.c (ggc_mark_rtx_ptr, ggc_mark_tree_ptr,
	ggc_mark_tree_varray_ptr, ggc_mark_tree_hash_table_ptr,
	ggc_mark_string_ptr, ggc_mark_tree_hash_table_entry): Add prototypes.

	* integrate.c (expand_inline_function_eh_labelmap): Likewise.

	* lists.c (free_list, zap_lists): Likewise.

From-SVN: r29783
This commit is contained in:
Kaveh R. Ghazi 1999-10-03 16:28:33 +00:00 committed by Kaveh Ghazi
parent 93868d11a6
commit ca3075bd73
12 changed files with 90 additions and 10 deletions

View File

@ -1,3 +1,39 @@
Sun Oct 3 12:24:52 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* cpplib.c (if_directive_nameo): Add static prototype.
* cse.c (cse_insn): Remove unused variable `p'.
* except.c (create_rethrow_ref, push_entry,
receive_exception_label, new_eh_region_entry, find_func_region,
clear_function_eh_region, process_nestinfo): Add static prototypes.
(get_reg_for_handler): Hide definition.
(process_nestinfo): Initialize variable `extra_handlers'.
* expr.h (expand_builtin_longjmp): Add extern prototype.
* final.c (final_addr_vec_align, align_fuzz): Add static prototypes.
* function.c (prepare_function_start): Likewise.
(pop_function_context_from): Mark parameter `context' with
ATTRIBUTE_UNUSED.
(push_temp_slots_for_block, flush_addressof): Hide definition.
* gcov.c (init_arc, reverse_arcs, create_program_flow_graph,
solve_program_flow_graph, calculate_branch_probs,
function_summary, main, fancy_abort): Add prototypes.
* gen-protos.c (add_hash, parse_fn_proto, main): Likewise.
(add_hash): Constify a char*.
* ggc-common.c (ggc_mark_rtx_ptr, ggc_mark_tree_ptr,
ggc_mark_tree_varray_ptr, ggc_mark_tree_hash_table_ptr,
ggc_mark_string_ptr, ggc_mark_tree_hash_table_entry): Add prototypes.
* integrate.c (expand_inline_function_eh_labelmap): Likewise.
* lists.c (free_list, zap_lists): Likewise.
Sun Oct 3 12:05:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> Sun Oct 3 12:05:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* alias.c (nonlocal_reference_p): Add static prototype. * alias.c (nonlocal_reference_p): Add static prototype.

View File

@ -49,6 +49,8 @@ static void skip_if_group PROTO ((cpp_reader *));
static void parse_name PARAMS ((cpp_reader *, int)); static void parse_name PARAMS ((cpp_reader *, int));
static void parse_string PARAMS ((cpp_reader *, int)); static void parse_string PARAMS ((cpp_reader *, int));
static int parse_assertion PARAMS ((cpp_reader *)); static int parse_assertion PARAMS ((cpp_reader *));
static const char *if_directive_name PARAMS ((cpp_reader *,
struct if_stack *));
/* External declarations. */ /* External declarations. */

View File

@ -7404,8 +7404,6 @@ cse_insn (insn, libcall_insn)
it. If it was a computed branch, delete it and re-emit. */ it. If it was a computed branch, delete it and re-emit. */
else if (dest == pc_rtx && GET_CODE (src) == LABEL_REF) else if (dest == pc_rtx && GET_CODE (src) == LABEL_REF)
{ {
rtx p;
/* If this is not in the format for a simple branch and /* If this is not in the format for a simple branch and
we are the only SET in it, re-emit it. */ we are the only SET in it, re-emit it. */
if (! simplejump_p (insn) && n_sets == 1) if (! simplejump_p (insn) && n_sets == 1)

View File

@ -472,7 +472,14 @@ static void mark_eh_node PROTO((struct eh_node *));
static void mark_eh_stack PROTO((struct eh_stack *)); static void mark_eh_stack PROTO((struct eh_stack *));
static void mark_eh_queue PROTO((struct eh_queue *)); static void mark_eh_queue PROTO((struct eh_queue *));
static void mark_tree_label_node PROTO ((struct label_node *)); static void mark_tree_label_node PROTO ((struct label_node *));
static void mark_func_eh_entry PROTO ((void *)); static void mark_func_eh_entry PROTO ((void *));
static rtx create_rethrow_ref PROTO ((int));
static void push_entry PROTO ((struct eh_stack *, struct eh_entry*));
static void receive_exception_label PROTO ((rtx));
static int new_eh_region_entry PROTO ((int, rtx));
static int find_func_region PROTO ((int));
static void clear_function_eh_region PROTO ((void));
static void process_nestinfo PROTO ((int, eh_nesting_info *, int *));
rtx expand_builtin_return_addr PROTO((enum built_in_function, int, rtx)); rtx expand_builtin_return_addr PROTO((enum built_in_function, int, rtx));
@ -877,7 +884,7 @@ get_new_handler (handler, typeinfo)
/* Find the index in function_eh_regions associated with a NOTE region. If /* Find the index in function_eh_regions associated with a NOTE region. If
the region cannot be found, a -1 is returned. This should never happen! */ the region cannot be found, a -1 is returned. This should never happen! */
int static int
find_func_region (insn_region) find_func_region (insn_region)
int insn_region; int insn_region;
{ {
@ -2842,6 +2849,7 @@ eh_regs (pcontext, psp, pra, outgoing)
/* Retrieve the register which contains the pointer to the eh_context /* Retrieve the register which contains the pointer to the eh_context
structure set the __throw. */ structure set the __throw. */
#if 0
rtx rtx
get_reg_for_handler () get_reg_for_handler ()
{ {
@ -2850,6 +2858,7 @@ get_reg_for_handler ()
current_function_decl); current_function_decl);
return reg1; return reg1;
} }
#endif
/* Set up the epilogue with the magic bits we'll need to return to the /* Set up the epilogue with the magic bits we'll need to return to the
exception handler. */ exception handler. */
@ -3064,7 +3073,7 @@ process_nestinfo (block, info, nested_eh_region)
handler_info *ptr, *last_ptr = NULL; handler_info *ptr, *last_ptr = NULL;
int x, y, count = 0; int x, y, count = 0;
int extra = 0; int extra = 0;
handler_info **extra_handlers; handler_info **extra_handlers = 0;
int index = info->region_index[block]; int index = info->region_index[block];
/* If we've already processed this block, simply return. */ /* If we've already processed this block, simply return. */

View File

@ -891,6 +891,7 @@ extern rtx expand_builtin_va_arg PROTO((tree, tree));
#endif #endif
extern rtx expand_builtin_setjmp PROTO((rtx, rtx, rtx, rtx)); extern rtx expand_builtin_setjmp PROTO((rtx, rtx, rtx, rtx));
extern void expand_builtin_longjmp PROTO ((rtx, rtx));
extern rtx expand_builtin_saveregs PROTO((void)); extern rtx expand_builtin_saveregs PROTO((void));
extern int get_varargs_alias_set PROTO((void)); extern int get_varargs_alias_set PROTO((void));

View File

@ -310,6 +310,10 @@ static void leaf_renumber_regs PROTO((rtx));
#ifdef HAVE_cc0 #ifdef HAVE_cc0
static int alter_cond PROTO((rtx)); static int alter_cond PROTO((rtx));
#endif #endif
#ifndef ADDR_VEC_ALIGN
static int final_addr_vec_align PROTO ((rtx));
#endif
static int align_fuzz PROTO ((rtx, rtx, int, unsigned));
/* Initialize data in final at the beginning of a compilation. */ /* Initialize data in final at the beginning of a compilation. */
@ -824,7 +828,7 @@ get_attr_length (insn)
#endif #endif
#ifndef ADDR_VEC_ALIGN #ifndef ADDR_VEC_ALIGN
int static int
final_addr_vec_align (addr_vec) final_addr_vec_align (addr_vec)
rtx addr_vec; rtx addr_vec;
{ {
@ -889,7 +893,7 @@ label_to_alignment (label)
GROWTH should be ~0 if the objective is to compute potential code size GROWTH should be ~0 if the objective is to compute potential code size
increase, and 0 if the objective is to compute potential shrink. increase, and 0 if the objective is to compute potential shrink.
The return value is undefined for any other value of GROWTH. */ The return value is undefined for any other value of GROWTH. */
int static int
align_fuzz (start, end, known_align_log, growth) align_fuzz (start, end, known_align_log, growth)
rtx start, end; rtx start, end;
int known_align_log; int known_align_log;

View File

@ -280,6 +280,7 @@ static void compute_insns_for_mem PROTO ((rtx, rtx, struct hash_table *));
static void mark_temp_slot PROTO ((struct temp_slot *)); static void mark_temp_slot PROTO ((struct temp_slot *));
static void mark_function_status PROTO ((struct function *)); static void mark_function_status PROTO ((struct function *));
static void mark_function_chain PROTO ((void *)); static void mark_function_chain PROTO ((void *));
static void prepare_function_start PROTO ((void));
/* Pointer to chain of `struct function' for containing functions. */ /* Pointer to chain of `struct function' for containing functions. */
@ -349,7 +350,7 @@ push_function_context ()
void void
pop_function_context_from (context) pop_function_context_from (context)
tree context; tree context ATTRIBUTE_UNUSED;
{ {
struct function *p = outer_function_chain; struct function *p = outer_function_chain;
struct var_refs_queue *queue; struct var_refs_queue *queue;
@ -1148,6 +1149,7 @@ push_temp_slots ()
/* Likewise, but save the new level as the place to allocate variables /* Likewise, but save the new level as the place to allocate variables
for blocks. */ for blocks. */
#if 0
void void
push_temp_slots_for_block () push_temp_slots_for_block ()
{ {
@ -1182,6 +1184,7 @@ set_target_temp_slot_level (level)
{ {
target_temp_slot_level = level; target_temp_slot_level = level;
} }
#endif
/* Pop a temporary nesting level. All slots in use in the current level /* Pop a temporary nesting level. All slots in use in the current level
are freed. */ are freed. */
@ -2680,6 +2683,7 @@ gen_mem_addressof (reg, decl)
/* If DECL has an RTL that is an ADDRESSOF rtx, put it into the stack. */ /* If DECL has an RTL that is an ADDRESSOF rtx, put it into the stack. */
#if 0
void void
flush_addressof (decl) flush_addressof (decl)
tree decl; tree decl;
@ -2691,6 +2695,7 @@ flush_addressof (decl)
&& GET_CODE (XEXP (XEXP (DECL_RTL (decl), 0), 0)) == REG) && GET_CODE (XEXP (XEXP (DECL_RTL (decl), 0), 0)) == REG)
put_addressof_into_stack (XEXP (DECL_RTL (decl), 0), 0); put_addressof_into_stack (XEXP (DECL_RTL (decl), 0), 0);
} }
#endif
/* Force the register pointed to by R, an ADDRESSOF rtx, into the stack. */ /* Force the register pointed to by R, an ADDRESSOF rtx, into the stack. */

View File

@ -220,6 +220,15 @@ static void read_files PROTO ((void));
static void scan_for_source_files PROTO ((void)); static void scan_for_source_files PROTO ((void));
static void output_data PROTO ((void)); static void output_data PROTO ((void));
static void print_usage PROTO ((void)) ATTRIBUTE_NORETURN; static void print_usage PROTO ((void)) ATTRIBUTE_NORETURN;
static void init_arc PROTO ((struct adj_list *, int, int, struct bb_info *));
static struct adj_list *reverse_arcs PROTO ((struct adj_list *));
static void create_program_flow_graph PROTO ((struct bb_info_list *));
static void solve_program_flow_graph PROTO ((struct bb_info_list *));
static void calculate_branch_probs PROTO ((struct bb_info_list *, int,
struct arcdata **, int));
static void function_summary PROTO ((void));
extern int main PROTO ((int, char **));
int int
main (argc, argv) main (argc, argv)
@ -269,6 +278,7 @@ fnotice VPROTO ((FILE *file, const char *msgid, ...))
/* More 'friendly' abort that prints the line and file. /* More 'friendly' abort that prints the line and file.
config.h can #define abort fancy_abort if you like that sort of thing. */ config.h can #define abort fancy_abort if you like that sort of thing. */
extern void fancy_abort PROTO ((void)) ATTRIBUTE_NORETURN;
void void
fancy_abort () fancy_abort ()

View File

@ -25,13 +25,16 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
int verbose = 0; int verbose = 0;
const char *progname; const char *progname;
static void add_hash PARAMS ((const char *));
static int parse_fn_proto PARAMS ((char *, char *, struct fn_decl *));
#define HASH_SIZE 2503 /* a prime */ #define HASH_SIZE 2503 /* a prime */
int hash_tab[HASH_SIZE]; int hash_tab[HASH_SIZE];
int next_index; int next_index;
static void static void
add_hash (fname) add_hash (fname)
char *fname; const char *fname;
{ {
int i, i0; int i, i0;
@ -124,6 +127,8 @@ parse_fn_proto (start, end, fn)
return 1; return 1;
} }
extern int main PARAMS ((int, char **));
int int
main (argc, argv) main (argc, argv)
int argc ATTRIBUTE_UNUSED; int argc ATTRIBUTE_UNUSED;

View File

@ -29,6 +29,13 @@
#include "tree.h" #include "tree.h"
#include "varray.h" #include "varray.h"
static void ggc_mark_rtx_ptr PARAMS ((void *));
static void ggc_mark_tree_ptr PARAMS ((void *));
static void ggc_mark_tree_varray_ptr PARAMS ((void *));
static void ggc_mark_tree_hash_table_ptr PARAMS ((void *));
static void ggc_mark_string_ptr PARAMS ((void *));
static boolean ggc_mark_tree_hash_table_entry PARAMS ((struct hash_entry *,
hash_table_key));
/* Maintain global roots that are preserved during GC. */ /* Maintain global roots that are preserved during GC. */

View File

@ -78,6 +78,7 @@ static void process_reg_param PROTO((struct inline_remap *, rtx,
rtx)); rtx));
void set_decl_abstract_flags PROTO((tree, int)); void set_decl_abstract_flags PROTO((tree, int));
static tree copy_and_set_decl_abstract_origin PROTO((tree)); static tree copy_and_set_decl_abstract_origin PROTO((tree));
static rtx expand_inline_function_eh_labelmap PROTO((rtx));
/* The maximum number of instructions accepted for inlining a /* The maximum number of instructions accepted for inlining a
function. Increasing values mean more agressive inlining. function. Increasing values mean more agressive inlining.
@ -1240,7 +1241,6 @@ expand_inline_function (fndecl, parms, target, ignore, type,
default: default:
abort (); abort ();
break;
} }
if (copy) if (copy)

View File

@ -24,6 +24,9 @@ Boston, MA 02111-1307, USA. */
#include "rtl.h" #include "rtl.h"
#include "ggc.h" #include "ggc.h"
static void free_list PARAMS ((rtx *, rtx *));
static void zap_lists PARAMS ((void *));
/* Functions for maintaining cache-able lists of EXPR_LIST and INSN_LISTs. */ /* Functions for maintaining cache-able lists of EXPR_LIST and INSN_LISTs. */
/* An INSN_LIST containing all INSN_LISTs allocated but currently unused. */ /* An INSN_LIST containing all INSN_LISTs allocated but currently unused. */