diff --git a/tests/jump-table.pure.lisp b/tests/jump-table.pure.lisp index c56632499..4a8d65779 100644 --- a/tests/jump-table.pure.lisp +++ b/tests/jump-table.pure.lisp @@ -197,24 +197,26 @@ standard-char) p1)))) -(defun good-example (x y) - (declare (fixnum x)) - (let ((bits (logand x 7))) - (case bits - (0 (print 'foo)) - (1 (cons 'a y)) - (2 (cons y 'zook)) - (3 "hi")))) - -(defun failing-example (x y) - (declare (fixnum x)) - (let ((bits (logand x 3))) - (case bits - (0 (print 'foo)) - (1 (cons 'a y)) - (2 (cons y 'zook)) - (3 "hi")))) - (with-test (:name :should-use-jump-table) - (assert (= (sb-kernel:code-jump-table-words (sb-kernel:fun-code-header #'good-example)) 5)) - (assert (= (sb-kernel:code-jump-table-words (sb-kernel:fun-code-header #'failing-example)) 5))) + (assert (= (sb-kernel:code-jump-table-words + (sb-kernel:fun-code-header + (checked-compile `(lambda (x y) + (declare (fixnum x)) + (let ((bits (logand x 7))) + (case bits + (0 (print 'foo)) + (1 (cons 'a y)) + (2 (cons y 'zook)) + (3 "hi"))))))) + 5)) + (assert (= (sb-kernel:code-jump-table-words + (sb-kernel:fun-code-header + (checked-compile `(lambda (x y) + (declare (fixnum x)) + (let ((bits (logand x 3))) + (case bits + (0 (print 'foo)) + (1 (cons 'a y)) + (2 (cons y 'zook)) + (3 "hi"))))))) + 5)))