Commit [8be78b] Maximize Restore History

More complicated TYPEP tests are marginally transparent to type propagation

Expansions for TYPEP are wrapped in %typep-wrapper, a fancy identity. The
additional arguments track what value is being tested for what type, which
helps inform constraint propagation, as well as detecting redundant type
tests.

Such a wrapper is a hindrance to lower level control flow rewriting that are
essential for decent code generation. After a single pass of constraint
propagation, the wrapper evaporates and the TYPEP expansion becomes as opaque
as it is now.

Paul Khuong Paul Khuong 2013-10-24

changed src/compiler/fndb.lisp
changed src/compiler/ir2tran.lisp
changed src/compiler/typetran.lisp
changed tests/compiler.pure.lisp
changed NEWS
src/compiler/fndb.lisp Diff Switch to side-by-side view
Loading...
src/compiler/ir2tran.lisp Diff Switch to side-by-side view
Loading...
src/compiler/typetran.lisp Diff Switch to side-by-side view
Loading...
tests/compiler.pure.lisp Diff Switch to side-by-side view
Loading...
NEWS Diff Switch to side-by-side view
Loading...