diff --git a/compiler/pack.lisp b/compiler/pack.lisp index a7af596c3d56c0ab29db3f60195e16ed9f5c5c7a..7cb5f48966f39bc589bf70b3c5d09aae0757567c 100644 --- a/compiler/pack.lisp +++ b/compiler/pack.lisp @@ -587,15 +587,10 @@ (when (eq (sb-kind sb) :finite) (fill (finite-sb-live-tns sb) nil))) - (let ((live (ir2-block-live-in block))) - (do ((conf (ir2-block-global-tns block) (global-conflicts-next conf))) - ((null conf)) - (when (or (eq (global-conflicts-kind conf) :live) - (/= (sbit live (global-conflicts-number conf)) 0)) - (let* ((tn (global-conflicts-tn conf)) - (sb (sc-sb (tn-sc tn)))) - (when (eq (sb-kind sb) :finite) - (setf (svref (finite-sb-live-tns sb) (tn-offset tn)) tn)))))) + (do-live-tns (tn (ir2-block-live-in block) block) + (let ((sb (sc-sb (tn-sc tn)))) + (when (eq (sb-kind sb) :finite) + (setf (svref (finite-sb-live-tns sb) (tn-offset tn)) tn)))) (setq *live-block* block) (setq *live-vop* (ir2-block-last-vop block))