0.8alpha.0.9:
[sbcl.git] / src / compiler / ltn.lisp
index cf5662b..7e9171b 100644 (file)
 ;;; deliver values normally. We still annotate the function continuation,
 ;;; since IR2tran might decide to call after all.
 ;;;
-;;; If not funny, we always flush arg type checks, but do it after
-;;; annotation when the LTN-POLICY is safe, since we don't want to
-;;; choose the TNs according to a type assertions that may not hold.
+;;; If not funny, we flush arg type checks, when LTN-POLICY is not
+;;; safe.
 ;;;
 ;;; Note that args may already be annotated because template selection can
 ;;; bail out to here.
                  (make-ir2-continuation
                   (primitive-type
                    (continuation-type arg)))))
-         (annotate-1-value-continuation arg)
-         (when safe-p (flush-type-check arg))))
+         (annotate-1-value-continuation arg)))
       (when (eq kind :error)
        (setf (basic-combination-kind call) :full))
       (setf (basic-combination-info call) :full)
 ;;; Make sure that a tail local call is linked directly to the bind
 ;;; node. Usually it will be, but calls from XEPs and calls that might have
 ;;; needed a cleanup after them won't have been swung over yet, since we
-;;; weren't sure they would really be TR until now. Also called by byte
-;;; compiler.
+;;; weren't sure they would really be TR until now.
 (defun set-tail-local-call-successor (call)
   (let ((caller (node-home-lambda call))
        (callee (combination-lambda call)))
 ;;; unsafe, then we never do any checks. If our policy is safe, and
 ;;; we are using a safe template, then we can also flush arg and
 ;;; result type checks. Result type checks are only flushed when the
-;;; continuation as a single use. Result type checks are not flush if
+;;; continuation has a single use. Result type checks are not flush if
 ;;; the policy is safe because the selection of template for results
 ;;; readers assumes the type check is done (uses the derived type
 ;;; which is the intersection of the proven and asserted types).