1 (in-package :cl-smoke.benchmark)
3 (define-foreign-library libcl-smoke-benchmark
4 (t (:default "libcl-smoke-benchmark")))
6 (let ((*foreign-library-directories*
7 (cons (asdf:component-pathname (asdf:find-system :cl-smoke.benchmark))
8 *foreign-library-directories*)))
9 (use-foreign-library libcl-smoke-benchmark))
11 (defctype size-t :unsigned-int)
13 (declaim (inline cl-smoke-benchmark-byte-array-size))
14 (defcfun cl-smoke-benchmark-byte-array-size :void
17 (declaim (inline cl-smoke-benchmark-overload))
18 (defcfun cl-smoke-benchmark-overload :unsigned-int
21 (declaim (inline cl-smoke-benchmark-signal-slot))
22 (defcfun cl-smoke-benchmark-signal-slot :void
25 (defcfun cl-smoke-benchmark-construct-setup :void
28 (declaim (inline cl-smoke-benchmark-construct))
29 (defcfun cl-smoke-benchmark-construct :char
32 (defcfun cl-smoke-benchmark-construct-cleanup :void
36 (defmacro with-benchmark-cxx-construct ((iterations) &body body)
38 (cl-smoke-benchmark-construct-setup ,iterations)
40 (cl-smoke-benchmark-construct-cleanup ,iterations)))
43 (defcfun cl-smoke-benchmark-simple-call :void