X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fnumbers.lisp;h=c62f864a6dd8247b1f76f2cf6f88efbc69595619;hb=f73c1f391342c797b8daebe4e8c27e5923341b6d;hp=a9987d67f4c8df23647fd0939950e965be56f5c7;hpb=b61003dec6f5af2b03549439155676666186283e;p=sbcl.git diff --git a/src/code/numbers.lisp b/src/code/numbers.lisp index a9987d6..c62f864 100644 --- a/src/code/numbers.lisp +++ b/src/code/numbers.lisp @@ -1369,7 +1369,7 @@ collect `(prepare-argument ,arg))))))) (loop for infos being each hash-value of sb!c::*modular-funs* ;; FIXME: We need to process only "toplevel" functions - unless (eq infos :good) + when (listp infos) do (loop for info in infos for name = (sb!c::modular-fun-info-name info) and width = (sb!c::modular-fun-info-width info) @@ -1383,16 +1383,15 @@ ;;; shifts. See also the comment in (LOGAND OPTIMIZER) for more ;;; discussion of this hack. -- CSR, 2003-10-09 #!-alpha -(defun sb!vm::ash-left-constant-mod32 (integer amount) +(defun sb!vm::ash-left-mod32 (integer amount) (etypecase integer ((unsigned-byte 32) (ldb (byte 32 0) (ash integer amount))) (fixnum (ldb (byte 32 0) (ash (logand integer #xffffffff) amount))) (bignum (ldb (byte 32 0) (ash (logand integer #xffffffff) amount))))) #!+alpha -(defun sb!vm::ash-left-constant-mod64 (integer amount) +(defun sb!vm::ash-left-mod64 (integer amount) (etypecase integer ((unsigned-byte 64) (ldb (byte 64 0) (ash integer amount))) (fixnum (ldb (byte 64 0) (ash (logand integer #xffffffffffffffff) amount))) - (bignum (ldb (byte 64 0) + (bignum (ldb (byte 64 0) (ash (logand integer #xffffffffffffffff) amount))))) -