Commit [90c2b0] Maximize Restore History

1.0.6.33: small CLOS cache improvements

* General PCL cleanups:
-- Get rid of FUNCTION-FUNCALL and FUNCTION-APPLY: instead just
declare the argument type. ETOOMANYLAYERSOFABSTRACTION.
-- Implement the unused GET-FUN in terms of GET-FUN1 for clarity.

* Use a single bitmask instead of multiply and mask to compute the
cache index (like the original implementation).

* Slower probe depth limit growth: caches with 1024 lines used to
have probe depth 16, which is starting to be on the slow side, and
some fairly common generics like PRINT-OBJECT have caches with
enough entries that they will be large no matter what. Instead of
(ceiling (sqrt lines) 2) make it (ceiling (sqrt (sqrt lines))).

* Better CACHE-HAS-INVALID-ENTRIES-P (does less work, picks up
incomplete lines.)

* MAP-ALL-CACHES and CHECK-CACHE-CONSISTENCY for debugging and
analysis.

* Typo in the format string in PRINT-OBJECT (CACHE T).

* A couple of non-CLOS optimization possibilities recorded.

Nikodemus Siivola Nikodemus Siivola 2007-06-08

changed src/pcl/cache.lisp
changed src/pcl/print-object.lisp
changed src/runtime/gc-common.c
changed tests/init.test.sh
changed OPTIMIZATIONS
changed version.lisp-expr
src/pcl/cache.lisp Diff Switch to side-by-side view
Loading...
src/pcl/print-object.lisp Diff Switch to side-by-side view
Loading...
src/runtime/gc-common.c Diff Switch to side-by-side view
Loading...
tests/init.test.sh Diff Switch to side-by-side view
Loading...
OPTIMIZATIONS Diff Switch to side-by-side view
Loading...
version.lisp-expr Diff Switch to side-by-side view
Loading...