From 61b71512fd6a7ed7637da31be07242db8a603953 Mon Sep 17 00:00:00 2001
From: ram <ram>
Date: Mon, 4 Feb 1991 18:02:01 +0000
Subject: [PATCH] Added SC-RESERVE-LOCATIONS slot.

---
 compiler/vop.lisp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/compiler/vop.lisp b/compiler/vop.lisp
index 18e6b0952..371ede8c6 100644
--- a/compiler/vop.lisp
+++ b/compiler/vop.lisp
@@ -956,7 +956,12 @@
   (number-stack-p nil :type boolean)
   ;;
   ;; Alignment restriction.  The offset must be an even multiple of this.
-  (alignment 1 :type (and index (integer 1))))
+  (alignment 1 :type (and index (integer 1)))
+  ;;
+  ;; A list of locations that we avoid packing in during normal register
+  ;; allocation to ensure that these locations will be free for operand
+  ;; loading.  This prevents load-TN packing from thrashing by spilling a lot.
+  (reserve-locations nil :type list))
 
 (defprinter sc
   name)
-- 
GitLab