From 1c7cf626e647866aec33c4a6e7e8edb26554fe3b Mon Sep 17 00:00:00 2001 From: Juho Snellman Date: Wed, 9 Feb 2005 23:53:30 +0000 Subject: [PATCH] 0.8.19.20: Declaim the type of *CHARACTER-DATABASE*. Decreases the total runtime of the ansi-test suite by about 3-5%. --- NEWS | 2 ++ src/code/target-char.lisp | 1 + version.lisp-expr | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 7a20686..e3ea60c 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,8 @@ changes in sbcl-0.8.20 (0.9alpha.0?) relative to sbcl-0.8.19: coerce function designators to functions. * optimization: code with many calls to CLOS methods specialized on CLOS classes has had redundant type checks removed. + * optimization: added declarations to speed up operations that access + the internal character database (for example STRING-UPCASE) * fixed some bugs related to Unicode integration: ** portions of multibyte characters at the end of buffers for character-based file input are correctly transferred to the diff --git a/src/code/target-char.lisp b/src/code/target-char.lisp index 40352d6..2efd4c7 100644 --- a/src/code/target-char.lisp +++ b/src/code/target-char.lisp @@ -33,6 +33,7 @@ `(integer 0 (,char-code-limit))) (defvar *character-database*) +(declaim (type (vector (unsigned-byte 8)) *character-database*)) (macrolet ((frob () (with-open-file (stream (merge-pathnames diff --git a/version.lisp-expr b/version.lisp-expr index 05b16af..2a83eac 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8.19.19" +"0.8.19.20" -- 1.7.10.4