0.pre7.86.flaky7.15:
authorWilliam Harold Newman <william.newman@airmail.net>
Sun, 2 Dec 2001 14:38:13 +0000 (14:38 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Sun, 2 Dec 2001 14:38:13 +0000 (14:38 +0000)
commitdc038a23a34c53e44b6de20b3e391cc05470e4af
tree094920dc2d25783514c2d66b51356aea3fd05757
parent419ce099442b9bffe41eff8516c6a2be085259de
0.pre7.86.flaky7.15:
s/walk-home/scavenge-home/ for consistency with old renamings
DTC's analysis of the regression test bug is that Python is
losing a variable because its home CLAMBDA is in one
COMPONENT while the closing-over CLAMBDA is in another
COMPONENT, and the one-COMPONENT-at-a-time physical
environment analysis isn't up to the challenge. Thus
Python deletes the apparently-unused variable and
things deteriorate from there. He produced a fix
involving special-casing top-level variables so that
physenv analysis never deletes them, but neither he
nor I was convinced that this covers all the bases.
So I'll try another approach, making FIND-INITIAL-DFO
treat the home/closure relationship as just as much
of a physical dependency as a function call, and so
prevent separation of the two CLAMBDAs into different
components. Thus...
...s/call-graph/dependency-graph/ to reflect intended
new behavior
src/assembly/x86/assem-rtns.lisp
src/compiler/dfo.lisp