|
From: Nicholas N. <nj...@ca...> - 2003-11-09 17:11:11
|
On Sun, 2 Nov 2003, Avery Pennarun wrote:
> Since I have total control over the setjmp/longjmp calls, would it be
> possible to add a feature to valgrind like
>
> if (!setjmp)
> VALGRIND_STOP_INVALIDATING
> longjmp(elsewhere)
> // else someone longjmped back to me
> VALGRIND_START_INVALIDATING
> printf("x is now %d\n", x);
>
> It would then need to be sure to invalidate only the areas between the old
> and new stack pointer whenever %sp is changed (the normal way) rather than
> blindly invalidating "everything under the current stack pointer."
>
> This is pretty low priority, however.
Indeed. I don't think this feature is likely to be added, since it would
only ever be used in extremely obscure circumstances, which is exactly the
kind of feature we don't like adding. Sorry about that.
(I still don't quite understand why you need to use this unusual
setjmp/longjmp thing instead of switching stack in a more normal way,
although I'm sure you have a good reason.)
N
|