repos
/
benchmark
/ annotate_shade
summary
|
shortlog
|
log
|
tree
|
commit
|
commitdiff
|
headdiff
|
annotate
|
headblob
|
headfilediff
|
filehistory
normal
|
plain
|
shade
|
zebra
Benchmark overload resolution at compile time.
Annotate for file lisp-benchmark.lisp
2009-05-25 tobias
1
(in-package :cl-smoke.benchmark)
14:59:32 '
2
'
3
(let ((array (make-instance 'qt:byte-array :args '("foobar"))))
'
4
(defun inline-call (iterations)
'
5
(declare (fixnum iterations)
'
6
(optimize (speed 3)))
'
7
(let ((char #\Null))
'
8
(declare (character char))
'
9
(dotimes (i iterations char)
'
10
(setf char (cxx:aref array 0))))))
'
11
'
12
(let ((object (make-instance 'qt:object)))
2009-07-08 tobias
13
; (declare (qt:object object))
2009-05-25 tobias
14
(defun simple-call (iterations)
14:59:32 '
15
(declare (fixnum iterations)
'
16
(optimize (speed 3)))
'
17
(dotimes (i iterations)
'
18
(cxx:kill-timer object 0))))
'
19
2009-07-08 tobias
20
#+sbcl
15:34:16 '
21
(smoke::define-resolve-at-compile-time cxx:kill-timer)
'
22
'
23
(let ((object (make-instance 'qt:object)))
'
24
(declare (qt:object object))
'
25
(defun simple-call-compile-time (iterations)
'
26
(declare (fixnum iterations)
'
27
(optimize (speed 3)))
'
28
(dotimes (i iterations)
'
29
(cxx:kill-timer object 0))))
'
30
2009-05-25 tobias
31
(defclass my-object (qt:object)
14:59:32 '
32
()
'
33
(:metaclass cxx:class))
'
34
'
35
2009-06-19 tobias
36
(defun signal-slot (iterations)
2009-05-25 tobias
37
(declare (fixnum iterations)
14:59:32 '
38
(optimize (speed 3)))
2010-01-10 tobias
39
(let ((my-signal (make-instance 'cl-smoke.qt-impl::qsignal :argument-types nil)))
2009-06-19 tobias
40
(declare (function my-signal))
15:31:27 '
41
(qt:connect my-signal
'
42
#'(lambda ()))
2009-05-25 tobias
43
(dotimes (i iterations)
2009-06-19 tobias
44
(funcall my-signal))))
15:31:27 '
45
2009-05-25 tobias
46
14:59:32 '
47
(defun construct (iterations)
'
48
(declare (fixnum iterations)
'
49
(optimize (speed 3)))
'
50
(dotimes (i iterations)
'
51
(make-instance 'qt:object)))