* Allows objects known to be FIXNUM to be pinned. Question:
why is a FIXNUM not acceptable to a DESCRIPTOR-REG?
;;; that GC won't move them while foreign functions go to work.
(define-vop (touch-object)
(:translate touch-object)
- (:args (object :scs (descriptor-reg)))
+ (:args (object))
(:ignore object)
(:policy :fast-safe)
(:arg-types t)
;;; that GC won't move them while foreign functions go to work.
(define-vop (touch-object)
(:translate touch-object)
- (:args (object :scs (descriptor-reg)))
+ (:args (object))
(:ignore object)
(:policy :fast-safe)
(:arg-types t)
t)
t
(error "~a" y)))))
+
+;;; Compiling W-P-O when the pinned objects are known to be fixnums
+;;; or characters.
+(compile nil '(lambda (x y)
+ (declare (fixnum y) (character x))
+ (sb-sys:with-pinned-objects (x y)
+ (some-random-function))))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.12.8"
+"1.0.12.9"