diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2003-11-20 11:44:19 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2003-11-20 11:44:19 +0000 |
commit | a72d4945d39e4386f107787cfd78e8d681f53c14 (patch) | |
tree | 029156bebba710b4f4a4a918b838c987c8d482ca /gcc/config/arm/arm-protos.h | |
parent | 8d98c44cc3fd42db75b088adeb4d6d0977101cf3 (diff) | |
download | gcc-a72d4945d39e4386f107787cfd78e8d681f53c14.tar.gz |
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
Diffstat (limited to 'gcc/config/arm/arm-protos.h')
-rw-r--r-- | gcc/config/arm/arm-protos.h | 4 |
1 files changed, 2 insertions, 2 deletions
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 *); |