X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompiler.pure.lisp;h=1a4a58c3be57e2017a2569a3d3fcc5cd6d9d7346;hb=76311b98b531bbda4ec2ee4ddfa654a7885d6275;hp=f5652e73130013acff1b128acef7dd30fa59aef9;hpb=625e155af989109f79fc4759a72a54ab2d18c8c1;p=sbcl.git diff --git a/tests/compiler.pure.lisp b/tests/compiler.pure.lisp index f5652e7..1a4a58c 100644 --- a/tests/compiler.pure.lisp +++ b/tests/compiler.pure.lisp @@ -1944,7 +1944,7 @@ nil '(lambda (a) (declare (type (integer 21 28) a)) - (declare (optimize (compilation-speed 1) (safety 2) + (declare (optimize (compilation-speed 1) (safety 2) (speed 0) (debug 0) (space 1))) (let* ((v7 (flet ((%f3 (f3-1 f3-2) (loop for lv2 below 1 @@ -1955,3 +1955,27 @@ (%f3 0 a)))) 0))) 22))) + +;;; MISC.626: bandaged AVER was still wrong +(assert (eql -829253 + (funcall + (compile + nil + '(lambda (a) + (declare (type (integer -902970 2) a)) + (declare (optimize (space 2) (debug 0) (compilation-speed 1) + (speed 0) (safety 3))) + (prog2 (if (logbitp 30 a) 0 (block b3 0)) a))) + -829253))) + +;; MISC.628: constant-folding %LOGBITP was buggy +(assert (eql t + (funcall + (compile + nil + '(lambda () + (declare (optimize (safety 3) (space 3) (compilation-speed 3) + (speed 0) (debug 1))) + (not (not (logbitp 0 (floor 2147483651 (min -23 0)))))))))) + +