* except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
as ncessary. (expand_eh_return): Convert between word_mode and Pmode. * unwind-dw2.c (extract_cie_info): Do not assume words and pointers are the same size. (execute_stack_op): Likewise. (execute_cfa_program): Likewise. (uw_frame_state_for): Likewise. (uw_update_context_1): Likewise. * unwind.inc (_Unwind_Reason_Code): Likewise. * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define. (EH_RETURN_STACKADJ_RTX): Likewise. * config/mips/mips.c (compute_frame_size): Make space for saving EH return registers. (mips_expand_epilogue): Handle EH stack adjustments. * config/mips/mips.md (eh_return): New pattern. (eh_set_lr_si): Likewise. (eh_set_lr_di): Likewise. Add splitter to perform EH return after reload. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42332 138bc75d-0d04-0410-961f-82ee72b054a4
Showing
- gcc/ChangeLog 22 additions, 0 deletionsgcc/ChangeLog
- gcc/config/mips/mips.c 34 additions, 6 deletionsgcc/config/mips/mips.c
- gcc/config/mips/mips.h 4 additions, 0 deletionsgcc/config/mips/mips.h
- gcc/config/mips/mips.md 87 additions, 0 deletionsgcc/config/mips/mips.md
- gcc/except.c 14 additions, 2 deletionsgcc/except.c
- gcc/unwind-dw2.c 58 additions, 53 deletionsgcc/unwind-dw2.c
- gcc/unwind.inc 2 additions, 2 deletionsgcc/unwind.inc
Loading
Please register or sign in to comment