guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: broken GC


From: Marius Vollmer
Subject: Re: broken GC
Date: 06 Aug 2001 23:17:09 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.0.102

Tom Lord <address@hidden> writes:

> Is it really the case that there is no interest in fixing
> the broken GC used in Guile?  If not, why not?

I think there is interest.  All else being equal, a precise GC is
better than a conservative GC.  (I think I have seen my share of
conservative leaks already, but I didn't really investigate.)

But I think it is still a big selling point of Guile that you don't
have to put your own GC hints into the code for automatic variables.
Maybe this point is not so big if you look at it closely since you
still have to understand what is happening and take care that the
compiler doesn't hide important SCM values from the eye of the GC.

Still we must consider the huge API change for the user when we go the
gcpro route, i.e., requiring the user to put in the GC hints manually.
I don't think we can do that without causing a major out cry.

I think it would be acceptable to require a preprocessing pass that
rewrites the C source into one that contains the needed hints.  That
pass could be quite involved, using code from GCC or your cparse.

It would at minimum recognize local variables of type SCM and put in
some (conservative?) protection code.  It could also help with telling
the GC about SCM values in structs that need protecting, etc.

The generated code could be system dependent so we could use
hypothetic special features of GCC, say, like a static description of
the stack layout that is keyed on the PC.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]