From a72d4945d39e4386f107787cfd78e8d681f53c14 Mon Sep 17 00:00:00 2001 From: Richard Earnshaw Date: Thu, 20 Nov 2003 11:44:19 +0000 Subject: arm.c (use_return_insn): New argument, SIBLING. * arm.c (use_return_insn): New argument, SIBLING. Support returning with a single instruction if the stack has been decremented by 4 and we have a frame pointer. Update all callers. (output_return_instruction): Likewise. (arm_output_epilogue): Change argument to SIBLING. Calculate really_return from the new argument. Update all callers. * arm.h (USE_RETURN_INSN): Pass NULL for the sibling. * arm.md (sibcall_epilogue): Call use_return_insn directly, and pass the sibling call. * arm-protos.h (use_return_insn, arm_output_epilogue): Update prototypes. From-SVN: r73761 --- gcc/config/arm/arm-protos.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gcc/config/arm/arm-protos.h') diff --git a/gcc/config/arm/arm-protos.h b/gcc/config/arm/arm-protos.h index 61c28be8629..471254efe4e 100644 --- a/gcc/config/arm/arm-protos.h +++ b/gcc/config/arm/arm-protos.h @@ -24,11 +24,11 @@ #define GCC_ARM_PROTOS_H extern void arm_override_options (void); -extern int use_return_insn (int); +extern int use_return_insn (int, rtx); extern int arm_regno_class (int); extern void arm_finalize_pic (int); extern int arm_volatile_func (void); -extern const char *arm_output_epilogue (int); +extern const char *arm_output_epilogue (rtx); extern void arm_expand_prologue (void); extern HOST_WIDE_INT arm_get_frame_size (void); extern const char *arm_strip_name_encoding (const char *); -- cgit v1.2.1