[armedbear-cvs] r12979 - trunk/abcl/src/org/armedbear/lisp
Alessio Stalla
astalla at common-lisp.net
Sun Oct 17 19:36:14 UTC 2010
Author: astalla
Date: Sun Oct 17 15:36:13 2010
New Revision: 12979
Log:
Do not create class files for local functions that have been inlined
Modified:
trunk/abcl/src/org/armedbear/lisp/compiler-pass1.lisp
Modified: trunk/abcl/src/org/armedbear/lisp/compiler-pass1.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/compiler-pass1.lisp (original)
+++ trunk/abcl/src/org/armedbear/lisp/compiler-pass1.lisp Sun Oct 17 15:36:13 2010
@@ -918,8 +918,8 @@
(setf (compiland-lambda-expression compiland) lambda-expression)
(setf (local-function-definition local-function)
(copy-tree definition))
- (setf (local-function-inline-expansion local-function)
- (generate-inline-expansion block-name lambda-list body))
+ ;(setf (local-function-inline-expansion local-function)
+ ;(generate-inline-expansion block-name lambda-list body))
(p1-compiland compiland)))
(push local-function local-functions)))
((with-saved-compiler-policy
@@ -933,7 +933,12 @@
(dolist (special (flet-free-specials block))
(push special *visible-variables*))
(setf (flet-form block)
- (list* (car form) local-functions (p1-body (cddr form))))
+ (list* (car form)
+ (remove-if (lambda (fn)
+ (and (inline-p (local-function-name fn))
+ (not (local-function-references-needed-p fn))))
+ local-functions)
+ (p1-body (cddr form))))
block)))))
More information about the armedbear-cvs
mailing list