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

Pedro Alves
2009-07-24T17:25:51Z

On Friday 24 July 2009 17:54:50, Tom Tromey wrote:
> I also haven't yet tried to make the longjmp code work like the
> exception code.  I'd like to see Pedro's glibc/longjmp fix go in first,
> so I can have a reasonable chance of testing any changes here.

Sorry, I took a deeper look at your previous patch a few weeks
ago over a weekend, but then the weekend ran out before I finished
the review, and then I stayed quiet about it waiting for some other
time to finish what I had started, but that never arrived. :-/

I already had patches to do something like like you mention to
the longjmp code from 2008, but I hadn't re-posted them because
of the glibc pointer mangling getting in the way.

I found out that your code to detect if the exception is outer or
not won't always work for longjmps, in the longjmp tests I have
for example. This made me wonder if we shouldn't get longjmp
done first, and then maybe reuse it or not for exceptions if
it makes sense. As it is in your patch, you're reusing the
longjmp paths in infrun.c and co., but it may end up that's
not a good choice.

I also thought at the time that there were some things in that
patch (I didn't look at this new one yet), that should be split
into independent changes, like changes to insert longjmp breakpoints
in a few commands that didn't had them inserted (but memory is a
bit vague by now though, I can't remember exact details). I did brush
up my only-follow-longjmp-if-going-outer patches a bit and I was
aiming at posting it before you had updated your patch, but obviously
I failed. :-/

I think if we have a chance of looking at what needs addressing
for longjmp first (and split your changes that concern with longjmp
too), we will have a better result. Would you mind that? I'll try to
get at it again this weekend, and post what I have, and finish up
the review I had already started (looking at the new patch, of course).

--
Pedro Alves