backtrace() vs. _Unwind_Backtrace()
Mohan Embar
gnustuff@thisiscool.com
Fri Dec 5 15:01:00 GMT 2003
Hi Andrew,
> > >DWARF EH was previously enabled for Win32, but problems occurred where
> > >exceptions need to be thrown through OS callback frames (that don't
> > >have unwind info), which is a common requirement for Win32 code, so it
> > >uses SJLJ exceptions for now. So, it would need a way to unwind through
> > >info-less OS frames so that the DWARF unwinder can resume unwinding on
> > >the other side (ie a generalized MD_FALLBACK_FRAME_STATE_FOR).
> >
> > I know little-to-nothing about this, but did this have to do with the structured
> > exception handler in win32.cc? If so, it looks like the two things we're trying
> > to deal with there are access violations and divides by zero. Because of the
> > issue you mentioned, -fcheck-references and -fuse-divide-subroutine were
> > later added:
> >
> > http://gcc.gnu.org/ml/java-patches/2003-q2/msg00269.html
> >
> > ...so is my analysis correct that because of these additions, we can now
> > revert to DWARF EH on Win32? Ranjit?
>Well, it's true that in general you no longer have to unwind through
>exception handler frames. However, there's still a problem with
>exceptions thrown in CNI code. I am proposing, probably post 3.4
>split, to change CNI so that null pointer checks are enabled even in
>CNI code.
>So, DWARF EH sounds like a batter plan. Unless there's some other
>reason I don't know about...
I wasn't clear on whether you meant now or post-3.4.
(The CNI code is completely bug-free, so this shouldn't be an issue, right?)
-- Mohan
http://www.thisiscool.com/
http://www.animalsong.org/
More information about the Java
mailing list