diff --git a/compiler/ir2tran.lisp b/compiler/ir2tran.lisp index 67e2d8b9894037ae95e4b2c6a58d26224e0f9255..d698f280bab1d40e1f62d356afd4d7741cbe4e3d 100644 --- a/compiler/ir2tran.lisp +++ b/compiler/ir2tran.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir2tran.lisp,v 1.4 1990/03/05 12:13:49 ram Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir2tran.lisp,v 1.5 1990/03/10 16:58:03 ram Exp $ ;;; ;;; This file contains the virtual machine independent parts of the code ;;; which does the actual translation of nodes to VOPs. @@ -1182,7 +1182,7 @@ ;;; (defun init-xep-environment (node block fun) (declare (type bind node) (type ir2-block block) (type clambda fun)) - (vop allocate-frame node block) + (vop allocate-frame node block (entry-info-offset (leaf-info fun))) (let ((ef (functional-entry-function fun))) (when (and (optional-dispatch-p ef) (optional-dispatch-more-entry ef)) @@ -1244,7 +1244,11 @@ (when (ir2-environment-return-pc env) (move-from-frame node block (ir2-environment-return-pc-pass env) - (ir2-environment-return-pc env) argp))) + (ir2-environment-return-pc env) argp)) + + (let ((lab (gen-label))) + (setf (ir2-environment-environment-start env) lab) + (vop note-environment-start node block lab))) (undefined-value))