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