>>>> "OG" == Olivier Galibert
<galibert(a)pobox.com> writes:
OG> I'd like to see --use-minimal-tagbits being default, and the other
OG> alternative actually removed.
OG> Rationale:
OG> - per Kyle's study, performance is equivalent
OG> - we have to settle on one of the options for code-freezing time in
OG> order to ensure proper testing on all architectures
I thought we already have settled on doing things the way they've been
for years, i.e. default to gung-ho=no for 21.0.
OG> - not munging pointers is infinitely better because:
OG> * it removes the need for DATA_SEG_BITS which, basically, sucks
OG> * it makes purify-like memory leak detection possible
This is currently possible by simply running purify and friends on
temacs. Here are some targets in src/Makefile.in.in:
puremacs: $(temacs_deps)
$(PURIFY_PROG) $(PURIFY_FLAGS) $(LD) $(temacs_link_args) -lpthread
run-puremacs: puremacs
./puremacs -batch -l ${srcdir}/../lisp/loadup.el run-temacs
Also, VERY few folks will want to go to the trouble of purifying
XEmacs. Those that do can use --gung-ho.
In a 64-bit world, we might want to EXPAND the tagbits and keep enough
type bits to represent all the lisp types. This would allow say,
1 mark bit
7 type bits
56 val bits
which would use less memory.
Knowing which bits to use is going to be a DATA_SEG_BITS portability
problem though.
Martin