Commit [ba39d1]  Maximize  Restore  History

Pack (mostly) stack TNs according to lexical scope information

Packing TNs from shallow scopes before more deeply nested one
is a perfect elimination order when the live ranges span the
full scope (the interference graph is a comparability graph).
Use that as a heuristic, and do that for TNs that are known
to have such simple live ranges before the rest: this ensures
that bad TNs don't mess everything up.

The result is much tighter stack allocation (most of the effect
comes from initialising stack frames at a smaller size, and growing
less aggressively), and fewer long-lived stray references.

Incidentally: fix catch block packing on win32, solving lp#1072739

Paul Khuong Paul Khuong 2013-06-25

changed NEWS
changed src/compiler/pack.lisp
changed tests/compiler.pure.lisp
NEWS Diff Switch to side-by-side view
src/compiler/pack.lisp Diff Switch to side-by-side view
tests/compiler.pure.lisp Diff Switch to side-by-side view

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks