aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 62737994747..b068056667b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,23 @@
12015-01-05 Paul Eggert <eggert@cs.ucla.edu> 12015-01-05 Paul Eggert <eggert@cs.ucla.edu>
2 2
3 Use 0 for Qnil
4 Fixes Bug#15880.
5 If USE_LSB_TAG, arrange for the representation of Qnil to be zero so
6 that NILP (x) is equivalent to testing whether x is 0 at the
7 machine level. The overall effects of this and the previous patch
8 shrink the size of the text segment by 2.3% and speeds up
9 compilation of all the .elc files by about 0.5% on my platform,
10 which is Fedora 20 x86-64.
11 * lisp.h (lisp_h_XPNTR, lisp_h_XSYMBOL, lisp_h_XUNTAG)
12 (make_lisp_symbol) [USE_LSB_TAG]:
13 Symbols now tag the difference from lispsym, not the pointer.
14 (lisp_h_XUNTAGBASE, TAG_SYMPTR): New macros.
15 (Lisp_Int0, Lisp_Int1, Lisp_Symbol, Lisp_Misc, Lisp_String, Lisp_Cons):
16 Renumber so that Lisp_Symbol is 0, so that Qnil is zero.
17 (XSYMBOL): New forward decl.
18 (XUNTAGBASE): New function.
19 (XUNTAG): Use it.
20
3 Compute C decls for DEFSYMs automatically 21 Compute C decls for DEFSYMs automatically
4 Fixes Bug#15880. 22 Fixes Bug#15880.
5 This patch also makes Q constants (e.g., Qnil) constant addresses 23 This patch also makes Q constants (e.g., Qnil) constant addresses