* USE_LSB_TAG
@ 2004-01-21 4:53 Stefan Monnier
2004-01-21 21:09 ` USE_LSB_TAG Richard Stallman
0 siblings, 1 reply; 2+ messages in thread
From: Stefan Monnier @ 2004-01-21 4:53 UTC (permalink / raw)
I've just installed code that should make it possible to use low-bits for
tags, thus allowing the use of the whole address space for lisp data.
By default, things should work exactly as before, but if you define
USE_LSB_TAG, then the new tagging should be used. Things to note:
- if you use a compiler other than gcc, you will need to provide
a definition of DECL_ALIGN, otherwise USE_LSB_TAG will be ignored.
Please add the relevant definition to src/s/*.h or src/m/*.h or
src/lisp.h or post it here if you don't know where to put it.
- this will lead to errors if your malloc does not always return addresses
that are multiple-of-8.
- please also define ENABLE_CHECKING when using this new code.
- scratch that: please always use ENABLE_CHECKING.
- the .gdbinit file has not been updated, so gdb commands like xtype and
friends won't do the right thing.
- Also, please try it with the attached patch below to see if your system
can be automatically selected to USE_LSB_TAG. It seems that s/darwin.h
can also set USE_LSB_TAG. Tell me of other systems where USE_LSB_TAG
can be set. I'm especially interested to hear about systems where it
would be really useful such as on Mac OS 9 or FreeBSD.
- tell me if it works. Tell me if it doesn't.
Stefan
--- lisp.h.~1.476.~ Tue Jan 20 23:29:29 2004
+++ lisp.h Tue Jan 20 23:46:34 2004
@@ -291,6 +291,11 @@
\f
/***** Select the tagging scheme. *****/
+/* Try to USE_LSB_TAG on systems where we know malloc returns multiple-of-8 */
+#if defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__
+#define USE_LSB_TAG
+#endif
+
/* First, try and define DECL_ALIGN(type,var) which declares a static
variable VAR of type TYPE with the added requirement that it be
TYPEBITS-aligned. */
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-01-21 21:09 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-01-21 4:53 USE_LSB_TAG Stefan Monnier
2004-01-21 21:09 ` USE_LSB_TAG Richard Stallman
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.