* config/arm/arm-protos.h (arm_set_return_address,
commit4c44712e3cb956d61e7a793548fb1a8f85f5ad68
authorpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 16:22:47 +0000 (10 16:22 +0000)
committerpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 16:22:47 +0000 (10 16:22 +0000)
tree96cfc069e4732b07c0d7b674918a451d0b47ad81
parent49ede24f4b2a99f56edc11c61cfe7487f64f9dc0
* config/arm/arm-protos.h (arm_set_return_address,
thumb_set_return_address): Add prototypes.
* config/arm/arm.h (ARM_FT_EXCEPTION_HANDLER): Remove.
* config/arm/arm.c (arm_compute_func_type,
use_return_insn, arm_compute_save_reg0_reg12_mask,
arm_compute_save_reg_mask, arm_output_function_prologue,
arm_output_epilogue): Replace ARM_FT_EXCEPTION_HANDLER with
current_function_calls_eh_return.
(thumb_exit, thumb_pushpop, thumb_unexpanded_epilogue): Replace
old eh code.
(arm_set_return_address, thumb_set_return_address): New functions.
* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS, DWARF2_UNWIND_INFO,
ARM_EH_STACKADJ_REGNUM, EH_RETURN_STACKADJ_RTX): Define.
* config/arm/arm.md (VUNSPEC_EH_RETURN): Add.
(epilogue): Use the stackadj register.
(eh_return, arm_eh_return, thumb_eh_return): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85757 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/arm/arm-protos.h
gcc/config/arm/arm.c
gcc/config/arm/arm.h
gcc/config/arm/arm.md