unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* 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

* Re: USE_LSB_TAG
  2004-01-21  4:53 USE_LSB_TAG Stefan Monnier
@ 2004-01-21 21:09 ` Richard Stallman
  0 siblings, 0 replies; 2+ messages in thread
From: Richard Stallman @ 2004-01-21 21:09 UTC (permalink / raw)
  Cc: emacs-devel

This is a major change--thanks for working on it.

^ 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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).