[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: t and nil in pure memory?
From: |
Stefan Monnier |
Subject: |
Re: t and nil in pure memory? |
Date: |
Sun, 15 Nov 2009 20:34:19 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
> #define MAYBE_MARK_OBJECT(ARG) \
> do { \
> Lisp_Object OBJ = ARG; \
> \
> if ((XTYPE (OBJ) == Lisp_Symbol)) \
Please don't use this. Always use SYMBOLP instead.
> { \
> struct Lisp_Symbol *tptr = XSYMBOL (OBJ); \
> if (!tptr->gcmarkbit) \
> mark_object (OBJ); \
> } \
> else \
> mark_object (OBJ); \
> } while (0)
This may save a few function calls for some symbols, but adds a test for
all other cases, so it's unlikely to win much if anything.
I think some of the needed changes to streamline the code would be to
remove the PUREP test (i.e. just always keep the mark bit set on pure
objects instead. This will require changing the way we handle the
markbit on strings and vectors).
Maybe we'd also want to unify the code that extracts the markbit for the
various possible objects, so that we can check the markbit before we
dispatch on the type of object we're looking at. That would be an even
more drastic change.
> The big problem in GC is the trashing of the memory system due to
> setting/resetting and reading the mark bits...
Could be as well. In that case, maybe we should move all the markbits
to separate bitvectors like we have for cons and floats.
Stefan
- Re: t and nil in pure memory?, (continued)
- Re: t and nil in pure memory?, Richard Stallman, 2009/11/19
- Re: t and nil in pure memory?, Stefan Monnier, 2009/11/19
- Re: t and nil in pure memory?, Richard Stallman, 2009/11/19
- Re: t and nil in pure memory?, Chong Yidong, 2009/11/20
- Re: t and nil in pure memory?, Sam Steingold, 2009/11/22
- Re: t and nil in pure memory?, David Kastrup, 2009/11/22
- Re: t and nil in pure memory?, Dan Nicolaescu, 2009/11/19
- Re: t and nil in pure memory?, Dan Nicolaescu, 2009/11/15
- Re: t and nil in pure memory?,
Stefan Monnier <=
- Re: t and nil in pure memory?, Ken Raeburn, 2009/11/18
- Re: t and nil in pure memory?, Daniel Colascione, 2009/11/18
- Re: t and nil in pure memory?, Tom Tromey, 2009/11/18
- Re: t and nil in pure memory?, Tom Tromey, 2009/11/18
- Re: t and nil in pure memory?, Ken Raeburn, 2009/11/22
- Re: t and nil in pure memory?, Stephen J. Turnbull, 2009/11/23
- Re: t and nil in pure memory?, Ken Raeburn, 2009/11/24
- Re: t and nil in pure memory?, Stefan Monnier, 2009/11/24
- Re: t and nil in pure memory?, Stefan Monnier, 2009/11/18
Re: t and nil in pure memory?, Eli Zaretskii, 2009/11/11