Commit [56a2db] Maximize Restore History

Compiler support for specialised implicit value cells

Enables the use of non-T stack TNs for closed-over dynamic-extent variables.

SB!VM:PRIMITIVE-TYPE-INDIRECT-CELL-TYPE takes a primitive-type and returns
NIL, or a list of 4 values:
- the primitive type of the implicit indirect value cell
- the SC of that cell
- a function that takes the NODE, BLOCK, FP, VALUE and RESULT, and
emits a reference to that cell.
- a function that takes the NODE, BLOCK, FP, NEW-VALUE and VALUE, and
emits a write to that cell.

Some correctness tests to make sure codegen is correct (without verifying
DXness).

Paul Khuong Paul Khuong 2011-06-21

changed package-data-list.lisp-expr
changed src
changed src/compiler
changed src/compiler/alpha
changed src/compiler/alpha/vm.lisp
changed src/compiler/gtn.lisp
changed src/compiler/hppa
changed src/compiler/hppa/vm.lisp
changed src/compiler/ir2tran.lisp
changed src/compiler/mips
changed src/compiler/mips/vm.lisp
changed src/compiler/ppc
changed src/compiler/ppc/vm.lisp
changed src/compiler/sparc
changed src/compiler/sparc/vm.lisp
changed src/compiler/x86
changed src/compiler/x86-64
changed src/compiler/x86-64/vm.lisp
changed src/compiler/x86/vm.lisp
changed tests
changed tests/dynamic-extent.impure.lisp
package-data-list.lisp-expr Diff Switch to side-by-side view
Loading...
src
Directory.
src/compiler
Directory.
src/compiler/alpha
Directory.
src/compiler/alpha/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/gtn.lisp Diff Switch to side-by-side view
Loading...
src/compiler/hppa
Directory.
src/compiler/hppa/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/ir2tran.lisp Diff Switch to side-by-side view
Loading...
src/compiler/mips
Directory.
src/compiler/mips/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/ppc
Directory.
src/compiler/ppc/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/sparc
Directory.
src/compiler/sparc/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/x86
Directory.
src/compiler/x86-64
Directory.
src/compiler/x86-64/vm.lisp Diff Switch to side-by-side view
Loading...
src/compiler/x86/vm.lisp Diff Switch to side-by-side view
Loading...
tests
Directory.
tests/dynamic-extent.impure.lisp Diff Switch to side-by-side view
Loading...