0.9.9.20:
[sbcl.git] / src / compiler / x86 / arith.lisp
index a17925b..3c08693 100644 (file)
 (defknown %logbitp (integer unsigned-byte) boolean
   (movable foldable flushable))
 
+(defun %logbitp (index integer)
+  (logbitp index integer))
+
 ;;; too much work to do the non-constant case (maybe?)
 (define-vop (fast-logbitp-c/fixnum fast-conditional-c/fixnum)
   (:translate %logbitp)
   (:generator 4
-    (aver (< y 29))
+    (aver (<= y 29))
     (inst bt x (+ y n-fixnum-tag-bits))
     (inst jmp (if not-p :nc :c) target)))
 
     (inst bt x y)
     (inst jmp (if not-p :nc :c) target)))
 
-(define-vop (fast-logbitp-/unsigned fast-conditional-c/unsigned)
+(define-vop (fast-logbitp-c/unsigned fast-conditional-c/unsigned)
   (:translate %logbitp)
   (:generator 5
     (inst bt x y)