This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH][SH] Signal handler unwinding for SH-Linux


Hi,

This patch adds support for unwinding across signal handlers for
SH/Linux. The implementation is quite straightforward, following the
overall pattern for recognizing signal frames using the 'tramp_frame'
facilities. Currently, only 32-bit SH support is implemented.

The test results show improvement on many sighandler related tests, with
no regressions. Some gdb.base/sigbpt.exp tests change from FAIL->KFAIL,
though I'm not completely sure what that indicates.

Thanks,
Chung-Lin

2012-04-29  Chung-Lin Tang  <cltang@codesourcery.com>

	* sh-linux-tdep.c: Include trad-frame.h and tramp-frame.h.
	(sh_linux_sigtramp_cache): New function.
	(sh_linux_sigreturn_init): New function.
	(sh_linux_rt_sigreturn_init): New function.
	(SH_MOVW,SH_TRAP,SH_OR_R0_R0): New symbols for instruction
	patterns.
	(SH_NR_SIGRETURN,SH_NR_RT_SIGRETURN): New symbols for sigreturn
	syscall codes.
	(sh_linux_sigreturn_tramp_frame): New tramp_frame definition.
	(sh_linux_rt_sigreturn_tramp_frame): Likewise.
	(sh_linux_init_abi): Add init calls to register new tramp_frame
	definitions under 32-bit SH, update comments.

Attachment: sh-sighandler-unwind.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]