Update of /cvsroot/sbcl/sbcl
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv3882
188.8.131.52: compiler being nicer to the compiler
* In MAKE-XEP-LAMBDA-EXPRESSION, use EQL instead of = and NOT <
instead of >= to avoid additional rounds of deftransforms and
* Add a source transform for %COERCE-CALLABLE-TO-FUN to pick of
simple cases, also avoid inserting additional lambdas to the code.
* Use %FUNCALL and %COERCE-CALLABLE-TO-FUN in MAPFOO-TRANSFORM,
providing not just faster compilation, but also making (MAPCAR F
...) faster by lifting the %C-C-T-F out of the loop.
This work was based on Juho's observation that a major source of
compiler slowness are all the lambdas generated by transforms: not
that this changes the big picture in any way -- just shaves a few
corners. If you wish to get a gut feeling of what is going on, stick
a (PRINT (LIST DEBUG-NAME BODY)) in IR1-CONVERT-INLINE-LAMBDA.
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.3512
retrieving revision 1.3513
diff -u -d -r1.3512 -r1.3513
--- version.lisp-expr 17 Jul 2007 20:50:15 -0000 1.3512
+++ version.lisp-expr 17 Jul 2007 22:26:30 -0000 1.3513
@@ -17,4 +17,4 @@
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
Get latest updates about Open Source Projects, Conferences and News.