Generalize immobile space addresses
commit83f243850a509a5eb692c578d34a432afcd88713
authorDouglas Katzman <dougk@google.com>
Sat, 18 Nov 2017 18:05:00 +0000 (18 13:05 -0500)
committerDouglas Katzman <dougk@google.com>
Sat, 18 Nov 2017 20:51:41 +0000 (18 15:51 -0500)
treed62fa8f8cbce3788e95753252a277691d1acdb55
parentd721a6ea5c723c638a4db77b92cd3015ee0d4387
Generalize immobile space addresses

This is the first of several changes to split immobile space into two possibly
discontiguous ranges. Certain assumptions are removed,
but only in as much as they pertain to naming convention:
(1) that *immobile-space-free-pointer* is the upper bound on both subspaces
(2) that varyobj-space-start is fixedobj-space-start + fixedobj-space-size

Those constraints are not actually removed as yet. A consequence of this patch
is that GENCGC-SPACE-SETUP changed a lot, but hopefully the keyword arguments
make more sense now.
Corrected a fencepost error in IMMOBILE-SPACE-ADDR-P.
23 files changed:
package-data-list.lisp-expr
src/code/alloc.lisp
src/code/gc.lisp
src/code/misc-aliens.lisp
src/code/room.lisp
src/compiler/generic/early-objdef.lisp
src/compiler/generic/genesis.lisp
src/compiler/generic/parms.lisp
src/compiler/x86-64/target-insts.lisp
src/runtime/coreparse.c
src/runtime/fullcgc.c
src/runtime/gc-common.c
src/runtime/gencgc-internal.h
src/runtime/gencgc.c
src/runtime/globals.c
src/runtime/globals.h
src/runtime/immobile-space.c
src/runtime/os.h
src/runtime/parse.c
src/runtime/save.c
src/runtime/traceroot.c
src/runtime/validate.c
tests/gc.impure.lisp