- (labels ((template (before after)
- `(let* ((addr (+ 8 (logandc1 7 (sb-kernel:get-lisp-obj-address ptr))))
- (sap (sb-sys:int-sap (the (unsigned-byte 32) (+ addr ,offset)))))
+ (labels
+ ((template (before after)
+ `(let* ((addr
+ (the (unsigned-byte ,sb-vm:n-machine-word-bits)
+ (+ #.(ash 1 sb-vm:n-lowtag-bits)
+ (logandc1 #.(1- (ash 1 sb-vm:n-lowtag-bits))
+ (sb-kernel:get-lisp-obj-address ptr)))))
+ (sap (sb-sys:int-sap
+ (the (unsigned-byte ,sb-vm:n-machine-word-bits)
+ (+ addr ,offset)))))