X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fphysenvanal.lisp;h=8860c6a876cdfc7a20fbaeacfd188c943d45c6ea;hb=0cfad881b88e03971a2b3ef0c0c0fc2e5f4f1bc8;hp=99f964421552bfe4f862573eaa27d5615949a0df;hpb=5ec8d0c1c8b7939818b75118b472fac1af554f9a;p=sbcl.git diff --git a/src/compiler/physenvanal.lisp b/src/compiler/physenvanal.lisp index 99f9644..8860c6a 100644 --- a/src/compiler/physenvanal.lisp +++ b/src/compiler/physenvanal.lisp @@ -30,8 +30,8 @@ (declare (type component component)) (aver (every (lambda (x) (eq (functional-kind x) :deleted)) - (component-new-functions component))) - (setf (component-new-functions component) ()) + (component-new-funs component))) + (setf (component-new-funs component) ()) (dolist (fun (component-lambdas component)) (reinit-lambda-physenv fun)) (dolist (fun (component-lambdas component)) @@ -97,9 +97,12 @@ ;;; mysterious reason here) it's important to set up bottomed-out-here ;;; environments before anything else. -- WHN 2001-09-30 (defun preallocate-physenvs-for-toplevelish-lambdas (component) + (/show "entering PREALLOCATE-PHYSENVS-FOR-TOPLEVELISH-LAMDBAS" component) (dolist (clambda (component-lambdas component)) + (/show clambda (lambda-vars clambda) (lambda-toplevelish-p clambda)) (when (lambda-toplevelish-p clambda) (compute-closure clambda))) + (/show "leaving PREALLOCATE-PHYSENVS-FOR-TOPLEVELISH-LAMDBAS" component) (values)) ;;; If CLAMBDA has a PHYSENV , return it, otherwise assign an empty one. @@ -131,17 +134,16 @@ (let ((old (lambda-physenv (lambda-home fun)))) (cond (old (setf (physenv-closure old) - (delete-if #'(lambda (x) - (and (lambda-var-p x) - (null (leaf-refs x)))) + (delete-if (lambda (x) + (and (lambda-var-p x) + (null (leaf-refs x)))) (physenv-closure old))) (flet ((clear (fun) (dolist (var (lambda-vars fun)) (unless (lambda-var-sets var) (setf (lambda-var-indirect var) nil))))) (clear fun) - (dolist (let (lambda-lets fun)) - (clear let)))) + (map nil #'clear (lambda-lets fun)))) (t (get-lambda-physenv fun)))) (values)) @@ -342,7 +344,7 @@ (block-last block1) `(progn ,@(code))) (dolist (fun (reanalyze-funs)) - (local-call-analyze-1 fun))))) + (locall-analyze-fun-1 fun))))) (values))