[Gc] Re: Saving all register of Boehm's Stop-World of hypermodern
i686, is it reliable?
bruce at hoult.org
Sun Feb 11 15:32:56 PST 2007
On 2/12/07, Hans Boehm <Hans.Boehm at hp.com> wrote:
> I think setjmp implementations generally have two choices:
> 1) Save the callee-save registers in the buffer. Longjmp restores the
OK, that's all I've seen. Good to know there aren't known holes in it.
> 2) Save little more than the position on the stack in the buffer. Longjmp
> unwinds the stack, restoring callee-saves registers as it goes.
> (Type 2 implementations probably perform better, since they do less
> work in setjmp, but can't handle certain kinds of (ab)uses.)
Right. I do some of those :-)
setjmp on Windows is type 1, but the longjmp is kind of is a bit of a
mixture as it also walks the stack calling destructors (or something)!
Which screws up some of the (ab)uses as well.
More information about the Gc