;;;; and eliminates the need for any VM-dependent transforms to handle
;;;; these cases.
-(macrolet ((def-frob (fun)
+(macrolet ((def (fun)
`(progn
- (deftransform ,fun ((bit-array-1 bit-array-2 &optional result-bit-array)
+ (deftransform ,fun ((bit-array-1 bit-array-2
+ &optional result-bit-array)
(bit-vector bit-vector &optional null) *
:policy (>= speed space))
`(,',fun bit-array-1 bit-array-2
(deftransform ,fun ((bit-array-1 bit-array-2 result-bit-array)
(bit-vector bit-vector (member t)) *)
`(,',fun bit-array-1 bit-array-2 bit-array-1)))))
- (def-frob bit-and)
- (def-frob bit-ior)
- (def-frob bit-xor)
- (def-frob bit-eqv)
- (def-frob bit-nand)
- (def-frob bit-nor)
- (def-frob bit-andc1)
- (def-frob bit-andc2)
- (def-frob bit-orc1)
- (def-frob bit-orc2))
+ (def bit-and)
+ (def bit-ior)
+ (def bit-xor)
+ (def bit-eqv)
+ (def bit-nand)
+ (def bit-nor)
+ (def bit-andc1)
+ (def bit-andc2)
+ (def bit-orc1)
+ (def bit-orc2))
;;; Similar for BIT-NOT, but there is only one arg...
(deftransform bit-not ((bit-array-1 &optional result-bit-array)