CVS update by aidan xemacs/lisp ...
xemacs-cvs at xemacs.org
xemacs-cvs at xemacs.org
Mon Oct 15 06:55:51 EDT 2007
User: aidan
Date: 07/10/15 12:55:51
Modified: xemacs/lisp ChangeLog byte-optimize.el
Log:
Add a correct version of the (featurep 'xemacs) optimisation.
Revision Changes Path
1.852 +11 -0 XEmacs/xemacs/lisp/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/ChangeLog,v
retrieving revision 1.851
retrieving revision 1.852
diff -u -p -r1.851 -r1.852
--- ChangeLog 2007/10/15 10:53:33 1.851
+++ ChangeLog 2007/10/15 10:55:49 1.852
@@ -1,3 +1,14 @@
+2007-10-01 Aidan Kehoe <kehoea at parhasard.net>
+
+ * byte-optimize.el:
+ * byte-optimize.el (byte-optimize-ever-present-features): New.
+ * byte-optimize.el (byte-optimize-featurep): New.
+ Optimise calls to (featurep 'xemacs) to t, since our byte code
+ refuses to run on GNU Emacs. Also optimises away checks for cl,
+ cl-extra, cl-19 and backquote, a conservative list of those
+ features that have been available in every XEmacs build since the
+ last time our opcodes changed.
+
2007-10-14 Aidan Kehoe <kehoea at parhasard.net>
* coding.el:
1.13 +15 -0 XEmacs/xemacs/lisp/byte-optimize.el
Index: byte-optimize.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/byte-optimize.el,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -p -r1.12 -r1.13
--- byte-optimize.el 2007/09/15 19:11:55 1.12
+++ byte-optimize.el 2007/10/15 10:55:49 1.13
@@ -1169,6 +1169,21 @@
(eval form)
form)))
+(defvar byte-optimize-ever-present-features
+ '(xemacs cl cl-extra cl-19 backquote))
+
+(put 'featurep 'byte-optimizer 'byte-optimize-featurep)
+(defun byte-optimize-featurep (form)
+ (let ((to-check (cdr-safe form)))
+ (if (memq (car-safe
+ (cdr-safe
+ (car-safe
+ (cdr-safe
+ form))))
+ byte-optimize-ever-present-features)
+ t
+ form)))
+
;;; enumerating those functions which need not be called if the returned
;;; value is not used. That is, something like
More information about the XEmacs-CVS
mailing list