parent
d3379e9151
commit
521f2d6fcb
|
@ -183,7 +183,7 @@ extern rtx stack_slot_list;
|
|||
|
||||
/* Given a function decl for a containing function,
|
||||
return the `struct function' for it. */
|
||||
struct function *find_function_data ();
|
||||
struct function *find_function_data PROTO((tree));
|
||||
|
||||
/* Pointer to chain of `struct function' for containing functions. */
|
||||
extern struct function *outer_function_chain;
|
||||
|
@ -191,7 +191,7 @@ extern struct function *outer_function_chain;
|
|||
/* Put all this function's BLOCK nodes into a vector and return it.
|
||||
Also store in each NOTE for the beginning or end of a block
|
||||
the index of that block in the vector. */
|
||||
tree *identify_blocks ();
|
||||
tree *identify_blocks PROTO((tree, rtx));
|
||||
|
||||
#ifdef rtx
|
||||
#undef rtx
|
||||
|
|
|
@ -31,12 +31,12 @@ int (*ptr_half_pic_address_p) (); /* ptr to half_pic_address_p () */
|
|||
|
||||
extern int half_pic_number_ptrs; /* # distinct pointers found */
|
||||
extern int half_pic_number_refs; /* # half-pic references */
|
||||
extern void half_pic_encode (); /* encode whether half-pic */
|
||||
extern void half_pic_declare (); /* declare object local */
|
||||
extern void half_pic_init (); /* half_pic initialization */
|
||||
extern void half_pic_finish (); /* half_pic termination */
|
||||
extern int half_pic_address_p (); /* true if an address is half-pic */
|
||||
extern struct rtx_def *half_pic_ptr (); /* return RTX for half-pic pointer */
|
||||
extern void half_pic_encode PROTO((tree)); /* encode whether half-pic */
|
||||
extern void half_pic_declare PROTO((char *)); /* declare object local */
|
||||
extern void half_pic_init PROTO((void)); /* half_pic initialization */
|
||||
extern void half_pic_finish PROTO((FILE *)); /* half_pic termination */
|
||||
extern int half_pic_address_p PROTO((rtx)); /* true if an address is half-pic */
|
||||
extern struct rtx_def *half_pic_ptr PROTO((rtx)); /* return RTX for half-pic pointer */
|
||||
|
||||
/* Macros to provide access to the half-pic stuff (so they can easily
|
||||
be stubbed out. */
|
||||
|
|
|
@ -107,15 +107,10 @@ struct inline_remap
|
|||
|
||||
/* Return a copy of an rtx (as needed), substituting pseudo-register,
|
||||
labels, and frame-pointer offsets as necessary. */
|
||||
extern rtx copy_rtx_and_substitute ();
|
||||
extern rtx copy_rtx_and_substitute PROTO((rtx, struct inline_remap *));
|
||||
|
||||
extern void try_constants ();
|
||||
extern void try_constants PROTO((rtx, struct inline_remap *));
|
||||
|
||||
extern void mark_stores ();
|
||||
|
||||
/* We do some simple constant folding optimization. This optimization
|
||||
really exists primarily to save time inlining a function. It
|
||||
also helps users who ask for inline functions without -O. */
|
||||
extern rtx try_fold_condition ();
|
||||
extern void mark_stores PROTO((rtx, rtx));
|
||||
|
||||
extern rtx *global_const_equiv_map;
|
||||
|
|
22
gcc/loop.h
22
gcc/loop.h
|
@ -153,17 +153,17 @@ extern struct iv_class *loop_iv_list;
|
|||
|
||||
/* Forward declarations for non-static functions declared in loop.c and
|
||||
unroll.c. */
|
||||
int invariant_p ();
|
||||
rtx get_condition_for_loop ();
|
||||
void emit_iv_add_mult ();
|
||||
int invariant_p PROTO((rtx));
|
||||
rtx get_condition_for_loop PROTO((rtx));
|
||||
void emit_iv_add_mult PROTO((rtx, rtx, rtx, rtx, rtx));
|
||||
|
||||
/* Forward declarations for non-static functions declared in stmt.c. */
|
||||
void find_loop_tree_blocks ();
|
||||
void unroll_block_trees ();
|
||||
void find_loop_tree_blocks PROTO((void));
|
||||
void unroll_block_trees PROTO((void));
|
||||
|
||||
void unroll_loop ();
|
||||
rtx biv_total_increment ();
|
||||
unsigned HOST_WIDE_INT loop_iterations ();
|
||||
rtx final_biv_value ();
|
||||
rtx final_giv_value ();
|
||||
void emit_unrolled_add ();
|
||||
void unroll_loop PROTO((rtx, int, rtx, rtx, int));
|
||||
rtx biv_total_increment PROTO((struct iv_class *, rtx, rtx));
|
||||
unsigned HOST_WIDE_INT loop_iterations PROTO((rtx, rtx));
|
||||
rtx final_biv_value PROTO((struct iv_class *, rtx, rtx));
|
||||
rtx final_giv_value PROTO((struct induction *, rtx, rtx));
|
||||
void emit_unrolled_add PROTO((rtx, rtx, rtx));
|
||||
|
|
|
@ -18,6 +18,15 @@ along with GNU CC; see the file COPYING. If not, write to
|
|||
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
|
||||
/* Add prototype support. */
|
||||
#ifndef PROTO
|
||||
#if defined (USE_PROTOTYPES) ? USE_PROTOTYPES : defined (__STDC__)
|
||||
#define PROTO(ARGS) ARGS
|
||||
#else
|
||||
#define PROTO(ARGS) ()
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_MACHINE_MODES
|
||||
|
||||
/* Strictly speaking, this isn't the proper place to include these definitions,
|
||||
|
@ -131,11 +140,11 @@ extern enum machine_mode mode_wider_mode[];
|
|||
If LIMIT is nonzero, then don't use modes bigger than MAX_FIXED_MODE_SIZE.
|
||||
The value is BLKmode if no other mode is found. */
|
||||
|
||||
extern enum machine_mode mode_for_size ();
|
||||
extern enum machine_mode mode_for_size PROTO((unsigned int, enum mode_class, int));
|
||||
|
||||
/* Find the best mode to use to access a bit field. */
|
||||
|
||||
extern enum machine_mode get_best_mode ();
|
||||
extern enum machine_mode get_best_mode PROTO((int, int, int, enum machine_mode, int));
|
||||
|
||||
/* Determine alignment, 1<=result<=BIGGEST_ALIGNMENT. */
|
||||
|
||||
|
|
10
gcc/output.h
10
gcc/output.h
|
@ -20,23 +20,25 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||
|
||||
/* Output a string of assembler code, substituting insn operands.
|
||||
Defined in final.c. */
|
||||
extern void output_asm_insn ();
|
||||
extern void output_asm_insn PROTO((char *, rtx *));
|
||||
|
||||
/* Output a string of assembler code, substituting numbers, strings
|
||||
and fixed syntactic prefixes. */
|
||||
extern void asm_fprintf ();
|
||||
|
||||
#ifdef FILE
|
||||
/* Print an integer constant expression in assembler syntax.
|
||||
Addition and subtraction are the only arithmetic
|
||||
that may appear in these expressions. */
|
||||
extern void output_addr_const ();
|
||||
extern void output_addr_const PROTO((FILE *, rtx));
|
||||
|
||||
/* Output a name (as found inside a symbol_ref) in assembler syntax. */
|
||||
extern void assemble_name ();
|
||||
extern void assemble_name PROTO((FILE *, char *));
|
||||
#endif
|
||||
|
||||
/* Replace a SUBREG with a REG or a MEM, based on the thing it is a
|
||||
subreg of. */
|
||||
extern rtx alter_subreg ();
|
||||
extern rtx alter_subreg PROTO((rtx));
|
||||
|
||||
/* When outputting assembler code, indicates which alternative
|
||||
of the constraints was actually satisfied. */
|
||||
|
|
23
gcc/reload.h
23
gcc/reload.h
|
@ -18,6 +18,15 @@ along with GNU CC; see the file COPYING. If not, write to
|
|||
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
|
||||
/* Add prototype support. */
|
||||
#ifndef PROTO
|
||||
#if defined (USE_PROTOTYPES) ? USE_PROTOTYPES : defined (__STDC__)
|
||||
#define PROTO(ARGS) ARGS
|
||||
#else
|
||||
#define PROTO(ARGS) ()
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* If secondary reloads are the same for inputs and outputs, define those
|
||||
macros here. */
|
||||
|
||||
|
@ -106,10 +115,10 @@ extern enum insn_code reload_in_optab[];
|
|||
extern enum insn_code reload_out_optab[];
|
||||
#endif
|
||||
|
||||
extern void init_reload ();
|
||||
extern void find_reloads ();
|
||||
extern void subst_reloads ();
|
||||
extern rtx get_secondary_mem ();
|
||||
extern rtx eliminate_regs ();
|
||||
extern rtx gen_input_reload ();
|
||||
extern rtx find_replacement ();
|
||||
extern void init_reload PROTO((void));
|
||||
extern void find_reloads PROTO((rtx, int, int, int, short *));
|
||||
extern void subst_reloads PROTO((void));
|
||||
extern rtx get_secondary_mem PROTO((rtx, enum machine_mode));
|
||||
extern rtx eliminate_regs PROTO((rtx, enum machine_mode, rtx));
|
||||
extern rtx gen_input_reload PROTO((rtx, rtx, rtx));
|
||||
extern rtx find_replacement PROTO((rtx *));
|
||||
|
|
|
@ -37,5 +37,5 @@ struct stack_level
|
|||
int limit;
|
||||
};
|
||||
|
||||
struct stack_level *push_stack_level ();
|
||||
struct stack_level *pop_stack_level ();
|
||||
struct stack_level *push_stack_level PROTO((struct obstack *, char *, int));
|
||||
struct stack_level *pop_stack_level PROTO((struct stack_level *));
|
||||
|
|
Loading…
Reference in New Issue