[armedbear-cvs] r12683 - trunk/abcl/src/org/armedbear/lisp

Erik Huelsmann ehuelsmann at common-lisp.net
Sat May 15 14:14:29 UTC 2010


Author: ehuelsmann
Date: Sat May 15 10:14:28 2010
New Revision: 12683

Log:
Save a few bytes in our JAR by re-using serialized
anonymous symbols, when multiple references are required.

Modified:
   trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

Modified: trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	(original)
+++ trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	Sat May 15 10:14:28 2010
@@ -2072,11 +2072,12 @@
   (declare-with-hashtable
    symbol *declared-symbols* ht g
    (cond ((null (symbol-package symbol))
-	  (setf g (if *file-compilation*
-		      (declare-object-as-string symbol +lisp-symbol+
+          (setf g (if *file-compilation*
+                      (declare-object-as-string symbol +lisp-symbol+
                                                 +lisp-symbol-class+)
-		      (declare-object symbol +lisp-symbol+
-                                      +lisp-symbol-class+))))
+                      (declare-object symbol +lisp-symbol+
+                                      +lisp-symbol-class+))
+                (gethash symbol ht) g))
 	 (t
           (let (saved-code)
             (let ((*code* (if *declare-inline* *code* *static-code*))




More information about the armedbear-cvs mailing list