:lossage-fun nil
:unwinnage-fun nil))
(ir1-attributep attr unsafely-flushable)))
- (flush-dest (combination-fun node))
- (dolist (arg (combination-args node))
- (flush-dest arg))
- (unlink-node node))))))
+ (flush-combination node))))))
(mv-combination
(when (eq (basic-combination-kind node) :local)
(let ((fun (combination-lambda node)))
(setf (continuation-next cont) next)
;; FIXME: type checking?
(reoptimize-continuation cont)
- (reoptimize-continuation prev))))
+ (reoptimize-continuation prev)
+ (flush-combination call))))
(t (let ((dummies (make-gensym-list (length args))))
(transform-call
call
(when (and (combination-p use)
(eq (continuation-fun-name (combination-fun use))
'list))
+
+ ;; FIXME: VALUES might not satisfy an assertion on NODE-CONT.
(change-ref-leaf (continuation-use (combination-fun node))
(find-free-fun 'values "in a strange place"))
(setf (combination-kind node) :full)