This is the mail archive of the mailing list for the GDB project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: next/finish/etc -vs- exceptions

On Wednesday 10 June 2009 17:50:18, Tom Tromey wrote:
> I was under the impression that Ada used longjmp to implement
> exceptions, and so the existing longjmp support should work. ?(Modulo
> the odd bug or two -- I'm not sure if Pedro's fix for the glibc
> pointer mangling went in or not.)

It did not.  Our longjmp support on glibc is still broken.

I assume that exceptions have a property that raw longjmp doesn't,
which is what makes stepping over longjmp complicated --- they never
switch to alternate stacks?  That was one reason why comparing
frame/stack pointers with inner_than kind of comparisions is
verboten (to know when the longjmp/exception is all inner to the
step/next and can be ignored, for example).  That, and frames
crossing architectures, like on Cell.  I did spot one such comparision
by a quick look at the patch, but I don't know if it OK to do so in
your case or not.  I assume other people who know more about
frames and unwinders than me can provide better input there.  :-)

Pedro Alves

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]