This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
signal unwind and fp state
- From: Roman Zippel <zippel at linux-m68k dot org>
- To: gcc at gcc dot gnu dot org
- Date: Fri, 1 Jun 2007 15:51:36 +0200 (CEST)
- Subject: signal unwind and fp state
Hi,
While working on a vdso for Linux/m68k I stumbled again on a problem, I
already had with the fallback unwind handler in gcc, where I'd like to
hear some opinions.
I'm looking at the i386 unwind handler and that doesn't bother to restore
any fp registers. On m68k it's a little more difficult as the fp register
are saved/restored conditionally. There are also a few fp control register
on the stack, which are currently not restored via unwind.
The question maybe here is what really needs to restored via the signal
frame? If it's only for exception handling call clobbered registers
wouldn't really need to be restored (often they are even immediately
overwritten again to setup the exception handler) and even call saved
register don't really need to restored as that should already be done via
the frame of the signal handler itself (and depends on SA_SIGINFO anyway).
So is there really any need to restore in the signal frame more than
return address and frame address? AFAICT that should be enough for
exception handling, but maybe there is something else...
bye, Roman