1.0.25.3: earlier x86 code-object fixup envectorization
authorAlastair Bridgewater <lisphacker@users.sourceforge.net>
Tue, 3 Feb 2009 04:15:13 +0000 (04:15 +0000)
committerAlastair Bridgewater <lisphacker@users.sourceforge.net>
Tue, 3 Feb 2009 04:15:13 +0000 (04:15 +0000)
commit1589f3076965a68c07efa77539137673fed17e3c
tree1c150f30dee3c33471389f19e7fedb9766167c7e
parent9603675940cce3bcac93b354dca62d20c991cbce
1.0.25.3: earlier x86 code-object fixup envectorization

In order to be able to relocate code-objects, the x86 port has to keep
track of the locations of certain fixups within the objects (these
fixups being relative fixups pointing to addresses outside the
code-object and absolute fixups pointing to addresses within the
code-object).  Since time immemorial, the build process involved having
genesis dump a record of each fixup to be recorded as a cold-toplevel,
and cold-init passing such cold-toplevel information to
!envector-load-time-code-fixup.

  * Change genesis to create fixup-vectors directly, instead of dumping
    the fixup information as cold-toplevels.

  * Strip out the (now dead) code for envectoring cold-toplevels during
    cold-init.
src/code/cold-init.lisp
src/code/x86-vm.lisp
src/compiler/generic/genesis.lisp
version.lisp-expr