diff options
Diffstat (limited to 'gcc/config/m32r')
-rw-r--r-- | gcc/config/m32r/m32r-protos.h | 2 | ||||
-rw-r--r-- | gcc/config/m32r/m32r.c | 15 | ||||
-rw-r--r-- | gcc/config/m32r/m32r.h | 22 |
3 files changed, 11 insertions, 28 deletions
diff --git a/gcc/config/m32r/m32r-protos.h b/gcc/config/m32r/m32r-protos.h index a73b312..f0a1a5b 100644 --- a/gcc/config/m32r/m32r-protos.h +++ b/gcc/config/m32r/m32r-protos.h @@ -29,8 +29,6 @@ extern void m32r_init_expanders PARAMS ((void)); extern unsigned m32r_compute_frame_size PARAMS ((int)); extern int m32r_first_insn_address PARAMS ((void)); extern void m32r_expand_prologue PARAMS ((void)); -extern void m32r_output_function_prologue PARAMS ((FILE *, int)); -extern void m32r_output_function_epilogue PARAMS ((FILE *, int)); extern void m32r_finalize_pic PARAMS ((void)); extern void m32r_asm_file_start PARAMS ((FILE *)); extern void m32r_sched_init PARAMS ((FILE *, int)); diff --git a/gcc/config/m32r/m32r.c b/gcc/config/m32r/m32r.c index ca213af..12dad0d 100644 --- a/gcc/config/m32r/m32r.c +++ b/gcc/config/m32r/m32r.c @@ -64,11 +64,18 @@ static void block_move_call PARAMS ((rtx, rtx, rtx)); static int m32r_is_insn PARAMS ((rtx)); static int m32r_valid_decl_attribute PARAMS ((tree, tree, tree, tree)); +static void m32r_output_function_prologue PARAMS ((FILE *, HOST_WIDE_INT)); +static void m32r_output_function_epilogue PARAMS ((FILE *, HOST_WIDE_INT)); /* Initialize the GCC target structure. */ #undef TARGET_VALID_DECL_ATTRIBUTE #define TARGET_VALID_DECL_ATTRIBUTE m32r_valid_decl_attribute +#undef TARGET_ASM_FUNCTION_PROLOGUE +#define TARGET_ASM_FUNCTION_PROLOGUE m32r_output_function_prologue +#undef TARGET_ASM_FUNCTION_EPILOGUE +#define TARGET_ASM_FUNCTION_EPILOGUE m32r_output_function_epilogue + struct gcc_target target = TARGET_INITIALIZER; /* Called by OVERRIDE_OPTIONS to initialize various things. */ @@ -1962,10 +1969,10 @@ m32r_expand_prologue () Note, if this is changed, you need to mirror the changes in m32r_compute_frame_size which calculates the prolog size. */ -void +static void m32r_output_function_prologue (file, size) FILE * file; - int size; + HOST_WIDE_INT size; { enum m32r_function_type fn_type = m32r_compute_function_type (current_function_decl); @@ -1992,10 +1999,10 @@ m32r_output_function_prologue (file, size) /* Do any necessary cleanup after a function to restore stack, frame, and regs. */ -void +static void m32r_output_function_epilogue (file, size) FILE * file; - int size ATTRIBUTE_UNUSED; + HOST_WIDE_INT size ATTRIBUTE_UNUSED; { int regno; int noepilogue = FALSE; diff --git a/gcc/config/m32r/m32r.h b/gcc/config/m32r/m32r.h index dfe4f28..69efdb7 100644 --- a/gcc/config/m32r/m32r.h +++ b/gcc/config/m32r/m32r.h @@ -1190,34 +1190,12 @@ M32R_STACK_ALIGN (current_function_outgoing_args_size) init_emit, once for each function, before code is generated. */ #define INIT_EXPANDERS m32r_init_expanders () -/* This macro generates the assembly code for function entry. - FILE is a stdio stream to output the code to. - SIZE is an int: how many units of temporary storage to allocate. - Refer to the array `regs_ever_live' to determine which registers - to save; `regs_ever_live[I]' is nonzero if register number I - is ever used in the function. This macro is responsible for - knowing which registers should not be saved even if used. */ -#define FUNCTION_PROLOGUE(FILE, SIZE) \ -m32r_output_function_prologue (FILE, SIZE) - /* EXIT_IGNORE_STACK should be nonzero if, when returning from a function, the stack pointer does not matter. The value is tested only in functions that have frame pointers. No definition is equivalent to always zero. */ #define EXIT_IGNORE_STACK 1 -/* This macro generates the assembly code for function exit, - on machines that need it. If FUNCTION_EPILOGUE is not defined - then individual return instructions are generated for each - return statement. Args are same as for FUNCTION_PROLOGUE. - - The function epilogue should not depend on the current stack pointer! - It should use the frame pointer only. This is mandatory because - of alloca; we also take advantage of it to omit stack adjustments - before returning. */ -#define FUNCTION_EPILOGUE(FILE, SIZE) \ -m32r_output_function_epilogue (FILE, SIZE) - /* Output assembler code to FILE to increment profiler label # LABELNO for profiling a function entry. */ #define FUNCTION_PROFILER(FILE, LABELNO) abort () |