6 (ff:with-stack-fobject (ptr :int)
7 (setf (ff:fslot-value ptr) 0))
9 (fli:with-dynamic-foreign-objects ((ptr :int))
10 (setf (fli:dereference ptr) 0))
12 (alien:with-alien ((ptr alien:signed))
18 (let ((ptr (ff:allocate-fobject :int :c)))
19 (declare (dynamic-extent ptr))
20 (setf (ff:fslot-value-typed :int :c ptr) 0)
21 (ff:free-fobject ptr))
23 (let ((ptr (fli:allocate-foreign-object :type :int)))
24 (declare (dynamic-extent ptr))
25 (setf (fli:dereference ptr) 0)
26 (fli:free-foreign-object ptr))
28 (let ((ptr (alien:make-alien (alien:signed 32))))
29 (declare ;;(type (alien (* (alien:unsigned 32))) ptr)
31 (setf (alien:deref ptr) 0)
32 (alien:free-alien ptr))
38 (format t "~&Stack allocation")
39 (time (dotimes (i 1000)
42 (format t "~&Static allocation, open-coded slot access")
43 (time (dotimes (i 1000)