From: Nathan F. <nf...@us...> - 2005-06-30 20:16:08
|
Update of /cvsroot/sbcl/sbcl/src/compiler In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27471/src/compiler Modified Files: srctran.lisp Log Message: 0.9.2.6: Fix ASH to fold away shifts of zero based on the actual derived type, not just the constancy of the arg. Index: srctran.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/srctran.lisp,v retrieving revision 1.124 retrieving revision 1.125 diff -u -d -r1.124 -r1.125 --- srctran.lisp 2 Jun 2005 14:38:56 -0000 1.124 +++ srctran.lisp 30 Jun 2005 20:15:59 -0000 1.125 @@ -3110,7 +3110,7 @@ ;;; Perhaps we should have to prove that the denominator is nonzero before ;;; doing them? -- WHN 19990917 (macrolet ((def (name) - `(deftransform ,name ((x y) ((constant-arg (integer 0 0)) integer) + `(deftransform ,name ((x y) ((integer 0 0) integer) *) "fold zero arg" 0))) @@ -3118,7 +3118,7 @@ (def /)) (macrolet ((def (name) - `(deftransform ,name ((x y) ((constant-arg (integer 0 0)) integer) + `(deftransform ,name ((x y) ((integer 0 0) integer) *) "fold zero arg" '(values 0 0)))) |