Change the representation of compiled procedures and other entries:
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 14 Mar 1988 20:59:05 +0000 (20:59 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 14 Mar 1988 20:59:05 +0000 (20:59 +0000)
commit4c69904babd49b93f2f55e8dcd3b741e668ee482
treeebbb98fa493a1d6d99951e2836c8fb18ecf84e0b
parent9529eb81a2111f46bb5101486b26c9b9755a67ab
Change the representation of compiled procedures and other entries:
They are now just the address of an instruction with a gc offset
preceding the instruction and an arity/type word preceding that.
Compiled closures are done by creating a tiny fake compiled code block
which jumps to the right place and sets up the free variables for
reference.

Uuo style links are now just jump instructions to the correct address.
All relocators have been updated to reflect this change.

Variable caches have no type code. The relocators know about this.

New types:
TC_COMPILED_ENTRY
TC_MANIFEST_CLOSURE
TC_LINKAGE_SECTION
14 files changed:
v7/src/compiler/back/lapgn2.scm
v7/src/compiler/back/lapgn3.scm
v7/src/compiler/back/regmap.scm
v7/src/compiler/fggen/fggen.scm
v7/src/compiler/fgopt/blktyp.scm
v7/src/compiler/fgopt/order.scm
v7/src/compiler/rtlgen/fndblk.scm
v7/src/compiler/rtlgen/rgcomb.scm
v7/src/compiler/rtlgen/rgproc.scm
v7/src/compiler/rtlgen/rgrval.scm
v7/src/compiler/rtlgen/rgstmt.scm
v7/src/compiler/rtlgen/rtlgen.scm
v7/src/compiler/rtlopt/rcse1.scm
v7/src/compiler/rtlopt/rcse2.scm