0.6.10:
[sbcl.git] / src / compiler / locall.lisp
index f98eb7b..14e699c 100644 (file)
             (t
              (%argument-count-error ,n-supplied)))))))))
 
-;;; Make an external entry point (XEP) for Fun and return it. We
-;;; convert the result of Make-XEP-Lambda in the correct environment,
-;;; then associate this lambda with Fun as its XEP. After the
+;;; Make an external entry point (XEP) for FUN and return it. We
+;;; convert the result of MAKE-XEP-LAMBDA in the correct environment,
+;;; then associate this lambda with FUN as its XEP. After the
 ;;; conversion, we iterate over the function's associated lambdas,
 ;;; redoing local call analysis so that the XEP calls will get
 ;;; converted. We also bind *LEXENV* to change the compilation policy
 ;;; over to the interface policy.
 ;;;
-;;; We set Reanalyze and Reoptimize in the component, just in case we
+;;; We set REANALYZE and REOPTIMIZE in the component, just in case we
 ;;; discover an XEP after the initial local call analyze pass.
 (defun make-external-entry-point (fun)
   (declare (type functional fun))
   (assert (not (functional-entry-function fun)))
   (with-ir1-environment (lambda-bind (main-entry fun))
-    (let* ((*lexenv* (make-lexenv :cookie (make-interface-cookie *lexenv*)))
+    (let* ((*lexenv* (make-lexenv :policy (make-interface-policy *lexenv*)))
           (res (ir1-convert-lambda (make-xep-lambda fun))))
       (setf (functional-kind res) :external)
       (setf (leaf-ever-used res) t)
 
   (values))
 
-;;; If policy is auspicious, Call is not in an XEP, and we don't seem
+;;; If policy is auspicious, CALL is not in an XEP, and we don't seem
 ;;; to be in an infinite recursive loop, then change the reference to
 ;;; reference a fresh copy. We return whichever function we decide to
 ;;; reference.
 (defun maybe-expand-local-inline (fun ref call)
-  (if (and (policy call (>= speed space) (>= speed cspeed))
+  (if (and (policy call
+                  (and (>= speed space) (>= speed compilation-speed)))
           (not (eq (functional-kind (node-home-lambda call)) :external))
           (not *converting-for-interpreter*)
           (inline-expansion-ok call))
         (arglist (optional-dispatch-arglist fun))
         (args (combination-args call))
         (more (nthcdr max args))
-        (flame (policy call (or (> speed brevity) (> space brevity))))
+        (flame (policy call (or (> speed inhibit-warnings)
+                                (> space inhibit-warnings))))
         (loser nil)
         (temps (make-gensym-list max))
         (more-temps (make-gensym-list (length more))))