emacs-devel
[Top][All Lists]
Advanced

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

Re: USE_LSB_TAG and MS-DOS


From: Eli Zaretskii
Subject: Re: USE_LSB_TAG and MS-DOS
Date: Tue, 18 May 2004 20:45:37 +0200

> From: Stefan Monnier <address@hidden>
> Date: 18 May 2004 11:13:47 -0400
> 
> >From the ChangeLog text it seems that cmpiling with USE_LISP_UNION_TYPE
> would have caught that eons ago.

Probably.  Alas, I have no resources to do such experiments with the
DOS port, unless I have a specific bug and a good reason to believe
that some non-standard switch will help me find it.

(I did compile with ENABLE_CHECKING, as you suggested, but that didn't
help to hunt this specific bug, as Emacs crashed in precisely the same
place as before.  I then used GC debugging techniques described in
etc/DEBUG to find that Emacs was marking dos-unsupported-char-glyph
and barfed when it saw 127 as a cdr of a cons cell.)

Anyway, having to look for this bug was an ample punishment, as it was
I who introduced dos-unsupported-char-glyph years ago, and its
incorrect initialization is my bad.

> > Btw, is pure[] usage supposed to go up when USE_LSB_TAG is in effect?
> > AFAICS, it went from 977KB to 1019KB with almost no changes in Lisp
> > files since the previous build.
> 
> There is likely to be an increase of about "2bytes * nb objects" due to the
> additional alignment constraint.  Actually, most objects have a size that's
> a multiple of 8, so the extra alignment should only happen after allocating
> an array or a string, so it's probably more like "2b * nb arrays-or-strings".

Hmm... the last garbage-collect that is run at the end of `loadup'
says:

  ((48784 . 10021) (10244 . 0) (543 . 60) 69410 144160 (48 . 16) (17 . 12) 
(4927 . 1814))

4900 strings is far too few to explain 40KB growth of pure storage, so
where else is the extra storage coming from?

(Should PURESIZE's value be enlarged when USE_LSB_TAG is in effect?)




reply via email to

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