(inst lea result (make-ea :byte :base result :disp other-pointer-lowtag))
(storew type result 0 other-pointer-lowtag)
(storew length result vector-length-slot other-pointer-lowtag)
- (inst xor zero zero)
+ (zeroize zero)
(inst rep)
(inst stos zero)))
(make-ea :byte :base result :disp fun-pointer-lowtag))
(storew (logior (ash (1- size) n-widetag-bits) closure-header-widetag)
result 0 fun-pointer-lowtag))
- (storew result result closure-self-slot fun-pointer-lowtag)
(loadw temp function closure-fun-slot fun-pointer-lowtag)
(storew temp result closure-fun-slot fun-pointer-lowtag))))
(:generator 1
(inst mov result unbound-marker-widetag)))
+(define-vop (make-funcallable-instance-tramp)
+ (:args)
+ (:results (result :scs (any-reg)))
+ (:generator 1
+ (inst lea result (make-fixup "funcallable_instance_tramp" :foreign))))
+
(define-vop (fixed-alloc)
(:args)
(:info name words type lowtag)