1.0.14.36: faster PROPAGATE-FROM-SETS
authorNikodemus Siivola <nikodemus@random-state.net>
Mon, 18 Feb 2008 19:25:22 +0000 (19:25 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Mon, 18 Feb 2008 19:25:22 +0000 (19:25 +0000)
commit6d3b9d5de8a28cd92e280f3451b60ce412260c19
tree738be38c42e151630a0ef6756766937e301b668b
parent81153b7c9824ef389928ff6d04fb5acbcffb3867
1.0.14.36: faster PROPAGATE-FROM-SETS

 20-25% improvement for the test-case in bug 188.

 * New slot in LAMBDA-VAR: LAST-INITIAL-TYPE, which holds the last
   initial-type for that variable seen by PROPAGATE-FROM-SETS.

 * Be lazy, and don't PROPAGATE-TO-REFS unless something of
   interest has happened, to wit:

    -- One of the CSET nodes has a new, more specific type.

    -- INITIAL-TYPE has become more specific.

   This also allows us elide TYPE-UNION computation in the
   uninteresting cases.

 * Requires having NODE-REOPTIMIZE set when IR1-OPTIMIZE-SET
   is called.
BUGS
NEWS
src/compiler/ir1opt.lisp
src/compiler/node.lisp
version.lisp-expr