unwind-dw2.c
Jeff Sturm
jsturm@one-point.com
Thu Jun 14 10:17:00 GMT 2001
On 2001年6月14日, Tony Kimball wrote:
> During _Unwind_RaiseException, uw_frame_state_for (called from
> uw_init_context_1) returns _URC_END_OF_STACK, which leads to abort().
> This return is caused by unseen_objects and seen_objects being null
> simultaneously in unwind-dw2-fde.c. My naive impression is that
> __register_frame_info_bases needs to be called before the routine
> doing the throw executes, but is not.
Cygwin has always been a sjlj target. It's not quite ready for dwarf
exceptions, so you're blazing a trail here.
You're on the right track. Others are working on it. See PR 3099, in
particular
http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00573.html
and
http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00621.html
If you work on this, might as well ping David Billinghurst and Chris
Faylor to see how they are doing. Otherwise, fall back to sjlj exceptions
and everything *should* work.
If you are successful with dwarf exceptions, get ready for another
problem: exceptions from signal handlers won't work without special
hackery.
> My next planned step is to walk through a simple throw in the linux
> native compile, just to see how it *ought* to work. I don't know why
> I'm posting this message. I guess my enthusiasm is at low ebb.
> Perhaps someone could say 'keep going, you're making progress', or
> 'you should look at such-and-such code'?
If everything else is working, you've come a long way. But progress is
often measured by what's in the tree... do you have any patches available?
I'm glad to see someone is actively porting to Cygwin. There were some
earlier efforts that haven't kept up to date. I'd have worked on it
myself, but my client needs sparc-solaris support, and that's consumed
much of my time lately.
FWIW, I find the EH stuff is difficult to debug. I've
been struggling myself for a week or so with exceptions on Solaris. The
new scheme isn't really documented, which doesn't help any.
Jeff
More information about the Java
mailing list