Allocate-fixnum-range
Set aside fixnums in GCL
(Allocate-fixnum-range fixnum-lo fixnum-hi) causes Gnu Common
Lisp (GCL), versions preceding 2.7, to create a persistent table for the
integers between fixnum-lo and fixnum-hi (both bounds
inclusive). This table is referenced first when any integer is boxed and the
existing box in the table is used if the integer is in bounds. This can speed
up GCL (again, for versions preceding 2.7) considerably by avoiding wasteful
fixnum boxing. Here, fixnum-lo and fixnum-hi should be fixnums. On
32-bit machines it would be good for them to be of type (signed-byte 30),
with fixnum-lo <= fixnum-hi.
When this function is executed in a Lisp implementation other than a GCL
version preceding 2.7, it has no side effect other than to print a message.
This function always returns nil.
In GCL versions starting with 2.7.0, allocation for the table would
generally be a no-op other than to waste space, which is why
allocate-fixnum-range is a no-op for those versions.