3.0: unwinder changes
Andrew Haley
aph@cambridge.redhat.com
Tue Jun 12 10:57:00 GMT 2001
Jeff Sturm writes:
>
> On Wed, 6 Jun 2001, Andrew Haley wrote:
> > The critical file is config/sparc/linux.h, where we need to define
> > MD_FALLBACK_FRAME_STATE_FOR.
>
> Thanks. I meant to say sparc/solaris, actually.
>
> I'm finding sparc-signal.h is badly broken. While attempting to fix
> it, I ran into the problem with leaf functions just as you did:
>
> http://gcc.gnu.org/ml/gcc-patches/2001-05/msg00961.html
>
> So sparc-solaris must have MD_FALLBACK_FRAME_STATE_FOR or there is no
> chance of passing the testsuite, I guess... darn.
Yes, this is a consequence of the new EH structure. sparc-signal.h is
way out of date.
> > This routine is basically just a
> > structure copy, copying each register from the save area in the
> > sigcontext left by the kernel to the frame state in the unwinder.
> > There are already examples for PPC, x86, and Alpha.
>
> Ugh. These macros seem to rely on special knowledge of the undocumented
> sigreturn call. It's not obvious to me how I get from an
> _Unwind_Context to a struct ucontext on a non-linux OS.
You may find that sparc/solaris works in very much the same way as
Linux. I think it did the last time I looked.
> I'd guess this is important for 3.0, but the countdown is running
> and I cannot do anything more at the moment :(
I don't think that this can possibly happen. 3.0 is near-frozen.
The support for excaptions from signals requires this and only a few
targets work at the moment.
Andrew.
More information about the Java
mailing list