Jan Vroonhof writes:
Olivier Galibert <galibert(a)pobox.com> writes:
> We may want someday to integrate the type into the flags struct to go
> back to 4 bytes _or_ change the unsigned char to int (which may make
> the code faster, but probably only when using error checking).
I am even worried about the 4 bytes. That is still 50% overhead per
cons-cell. I have been thinking how to solve that. The best way IMHO
would be to allocate _all_ lisp types in frob-blocks (or slabs or
pools or...) _and_ then stick the typeinfo and a bitmap of type bits
at the start of the page.
Clever. But with this I think we'd be getting non-portable
again. malloc() isn't guaranteed to give us page-aligned blocks
and we'd need that to make the type check be fast.