0.8.3.39:
[sbcl.git] / src / compiler / gtn.lisp
index 876e14a..571d82c 100644 (file)
@@ -73,9 +73,9 @@
              reversed-ir2-physenv-alist)))
 
     (let ((res (make-ir2-physenv
-               :environment (nreverse reversed-ir2-physenv-alist)
+               :closure (nreverse reversed-ir2-physenv-alist)
                :return-pc-pass (make-return-pc-passing-location
-                                (external-entry-point-p clambda)))))
+                                (xep-p clambda)))))
       (setf (physenv-info lambda-physenv) res)
       (setf (ir2-physenv-old-fp res)
            (make-old-fp-save-location lambda-physenv))
 (defun use-standard-returns (tails)
   (declare (type tail-set tails))
   (let ((funs (tail-set-funs tails)))
-    (or (and (find-if #'external-entry-point-p funs)
+    (or (and (find-if #'xep-p funs)
             (find-if #'has-full-call-use funs))
        (block punt
          (dolist (fun funs t)
                     inhibit-warnings))
       (dolist (fun funs
                   (let ((*compiler-error-context* (lambda-bind (first funs))))
-                    (compiler-note
+                    (compiler-notify
                      "Return value count mismatch prevents known return ~
                       from these functions:~
                       ~{~%  ~A~}"
                (declare (ignore ignore))
                (when (eq count :unknown)
                  (let ((*compiler-error-context* (lambda-bind fun)))
-                   (compiler-note
+                   (compiler-notify
                     "Return type not fixed values, so can't use known return ~
                      convention:~%  ~S"
                     (type-specifier rtype)))
   (multiple-value-bind (types count) (values-types (tail-set-type tails))
     (let ((ptypes (mapcar #'primitive-type types))
          (use-standard (use-standard-returns tails)))
-      (when (and (eq count :unknown) (not use-standard))
+      (when (and (eq count :unknown) (not use-standard)
+                 (not (eq (tail-set-type tails) *empty-type*)))
        (return-value-efficiency-note tails))
       (if (or (eq count :unknown) use-standard)
          (make-return-info :kind :unknown
         (return (lambda-return fun)))
     (when (and return
               (not (eq (return-info-kind returns) :unknown))
-              (external-entry-point-p fun))
+              (xep-p fun))
       (do-uses (use (return-result return))
        (setf (node-tail-p use) nil))))
   (values))