diff --git a/compiler/debug-dump.lisp b/compiler/debug-dump.lisp index db87cd8134954f5f2e4f0b6e1f63c7c571af5c59..029810e5ac08661ff7de61fcb456ab225c972bf9 100644 --- a/compiler/debug-dump.lisp +++ b/compiler/debug-dump.lisp @@ -422,14 +422,20 @@ (let ((var-locs (make-hash-table :test #'eq))) (dolist (fun (component-lambdas component)) (clrhash var-locs) - (let ((dfun (make-compiled-debug-function - :name (cond ((leaf-name fun)) - ((let ((ef (functional-entry-function fun))) - (and ef (leaf-name ef)))) - (t - (component-name component))) - :kind (functional-kind fun) - :start-pc 0))) + (let* ((2env (environment-info (lambda-environment fun))) + (dfun (make-compiled-debug-function + :name (cond ((leaf-name fun)) + ((let ((ef (functional-entry-function fun))) + (and ef (leaf-name ef)))) + (t + (component-name component))) + :kind (functional-kind fun) + :return-pc (tn-sc-offset + (ir2-environment-return-pc 2env)) + :old-cont (tn-sc-offset + (ir2-environment-old-cont 2env)) + ;; Not right... + :start-pc 0))) (when (>= level 1) (setf (compiled-debug-function-variables dfun)