From 5c84ab613fd7b4502fba78d6d44348fc9a02ed72 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Sat, 21 Apr 1990 20:20:22 +0000
Subject: [PATCH] Don't assume that the block-number of the component-tail is
 the correct number of blocks.  Even if its not NIL, it will be wrong.  Use
 ir2-block-count instead.

---
 compiler/pack.lisp | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/compiler/pack.lisp b/compiler/pack.lisp
index e00016d68..6e449b14e 100644
--- a/compiler/pack.lisp
+++ b/compiler/pack.lisp
@@ -44,10 +44,7 @@
     (cond
      ((eq kind :component)
       (let ((loc-live (svref (finite-sb-always-live sb) offset)))
-	(dotimes (i (ir2-block-number
-		     (block-info
-		      (component-tail *compile-component*)))
-		    nil)
+	(dotimes (i (ir2-block-count *compile-component*) nil)
 	  (when (/= (sbit loc-live i) 0)
 	    (return t)))))
      ((eq kind :environment)
@@ -119,10 +116,7 @@
 	     (loc-live (svref (finite-sb-always-live sb) this-offset)))
 	(cond
 	 ((eq kind :component)
-	  (dotimes (num (ir2-block-number
-			 (block-info
-			  (component-tail *compile-component*)))
-			nil)
+	  (dotimes (num (ir2-block-count *compile-component*) nil)
 	    (setf (sbit loc-live num) 1)
 	    (set-bit-vector (svref loc-confs num))))
 	 ((eq kind :environment)
-- 
GitLab