This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [PATCH] Add sparc64-linux sigtramp support
On Thu, 21 Apr 2005 23:20:11 +0200 (CEST)
Mark Kettenis <mark.kettenis@xs4all.nl> wrote:
> The attached patch was what I was thinking about. If it has issues
> with signal handlers, take a look at
> i386-linux-tdep.c:i386_linux_dwarf_signale_p(), That might help in the
> case DWARF2 CFI for the signal trampoline is provided.
Missing dwarf2-frame.h include in sparc64-linux-tdep.c but otherwise
it did build.
It has one of the problems I ran into last night, namely that gcc
never emits data for register %g0 (which is always zero of course).
So the dwarf2 CFI unwinder spits out:
====
During symbol reading, incomplete CFI data; unspecified registers (e.g. g0)
at 0x100778
====
But besides that I can happily report that it seems to work well
even with signal handler backtraces. I'm doing this testing against
a tree with my tramp_frame Linux changes.
The temporary workaround I did last night was to make the sparc dwarf2
CIF unwinder init_reg() routine just mark G0 as UNDEFINED. I don't
know if that's what we'd like to do long term, or if GCC should output
something for this register.