[Top][All Lists]

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

Re: Heap corruption?

From: Stefan Monnier
Subject: Re: Heap corruption?
Date: Thu, 21 Aug 2003 12:42:10 -0400

> > And what do you suggest we can do about it?
> One could either move the tag bits to the bottom of Lisp objects, or
> reduce the number of bits being used at the top, which Stefan might be
> working on, and which XEmacs has done, I think.
> (IIRC, I started on the latter in the branch ``gerd_int'', but I
> don't recall how far that got.)

FWIW, the current CVS code does not use the MARKBIT any more.
I haven't committed the change to XGCTYPE and other macros to take
advantage of that yet, but it will give a factor of 2 increase in
max-buffer-size and max-addressable-memory.

It is also trivial to extend the range of integers by another factor
of 2 by splitting the Lisp_Int into Lisp_Int0 and Lisp_Int1 (we're
only using 7 of the 8 available tags right now).

As for moving the remaining 3 tag bits to the lower bits, I haven't done that
yet.  Most objects currently are guaranteed to be on an 8byte boundary,
but not all.  The main exception is the Lisp_Misc objects (most importantly
the markers and overlays) which currently take up 5 words and can't be
reduced to 4 so we'll have to bump them up to 6 words.


reply via email to

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