From: Alexey D. <ade...@us...> - 2003-04-03 09:10:19
|
Update of /cvsroot/sbcl/sbcl In directory sc8-pr-cvs1:/tmp/cvs-serv30168 Modified Files: OPTIMIZATIONS version.lisp-expr Log Message: 0.pre8.31: When EXTRACT-FUN-ARGS replaces inner function with the dummy LIST, mark the inner combination as known. Index: OPTIMIZATIONS =================================================================== RCS file: /cvsroot/sbcl/sbcl/OPTIMIZATIONS,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- OPTIMIZATIONS 2 Apr 2003 10:20:22 -0000 1.6 +++ OPTIMIZATIONS 3 Apr 2003 09:09:39 -0000 1.7 @@ -128,7 +128,7 @@ DOUBLE-FLOAT. Unhopefully, IR1 does not optimize away effectless SETs/bindings, and IR2 does not perform type inference. -------------------------------------------------------------------------------- -#9 +#9 "Multi-path constant folding" (defun foo (x) (if (= (cond ((irgh x) 0) ((buh x) 1) @@ -144,8 +144,17 @@ ((buh x) :no) (t :no))) -------------------------------------------------------------------------------- -#10 -Reported by Robert E. Brown on sbcl-devel 2003-01-21: +#11 +(inverted variant of #9) -(this is really a bug, fixed in 0.pre8.26) +(lambda (x) + (let ((y (sap-alien x c-string))) + (list (alien-sap y) + (alien-sap y)))) + +It could be optimized to + +(lambda (x) (list x x)) + +(if Y were used only once, the current compiler would optimize it) -------------------------------------------------------------------------------- Index: version.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v retrieving revision 1.855 retrieving revision 1.856 diff -u -d -r1.855 -r1.856 --- version.lisp-expr 2 Apr 2003 16:08:25 -0000 1.855 +++ version.lisp-expr 3 Apr 2003 09:09:40 -0000 1.856 @@ -18,4 +18,4 @@ ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.pre8.30" +"0.pre8.31" |