This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PING][Patch,ARM] unwind in epilogue ignore dwarf info
- From: "Greta Yorsh" <greta dot yorsh at arm dot com>
- To: "GCC Patches" <gcc-patches at gcc dot gnu dot org>
- Cc: "Richard Earnshaw" <Richard dot Earnshaw at arm dot com>, "Ramana Radhakrishnan" <Ramana dot Radhakrishnan at arm dot com>, "Greta Yorsh" <Greta dot Yorsh at arm dot com>
- Date: Fri, 31 Aug 2012 13:50:47 +0100
- Subject: [PING][Patch,ARM] unwind in epilogue ignore dwarf info
- References:
Ping
http://gcc.gnu.org/ml/gcc-patches/2012-07/msg01025.html
________________________________________
From: Greta Yorsh [Greta.Yorsh@arm.com]
Sent: Friday, July 20, 2012 7:28 PM
To: GCC Patches
Cc: Richard Earnshaw; Ramana Radhakrishnan
Subject: [Patch,ARM] unwind in epilogue ignore dwarf info
The final pass of gcc uses dwarf information to generate unwind tables and
directives (e.g., with command line option -fexceptions). Dwarf information
generated for epilogues should be ignored when generating unwind info,
because the ARM ABI only allows unwind at procedure boundaries. This patch
adds a flag unwind_in_epilogue for it. It wasn't needed in the past, because
there was no dwarf info generated for epilogues, but recent patches for
epilogue generation in RTL added it.
No regression on qemu.
2012-07-20 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.c (arm_unwind_function_begin_epilogue): New
function.
(unwind_in_epilogue) New static variable.
(arm_unwind_emit) Use unwind_in_epilogue flag.
(arm_asm_emit_except_personality) Clear unwind_in_epilogue flag.