From 0d8d0039a3de9296efb8775286aea2cf0aba1b96 Mon Sep 17 00:00:00 2001
From: dtc <dtc>
Date: Fri, 24 Jul 1998 15:21:29 +0000
Subject: [PATCH] Disable the immediate SC for the check-bound index argument
 because the immediate value can not be represented in the error code.

---
 compiler/x86/array.lisp | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/compiler/x86/array.lisp b/compiler/x86/array.lisp
index 1e99e139f..056112834 100644
--- a/compiler/x86/array.lisp
+++ b/compiler/x86/array.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/array.lisp,v 1.13 1998/03/21 07:54:36 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/array.lisp,v 1.14 1998/07/24 15:21:29 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -84,12 +84,15 @@
 
 ;;;; Bounds checking routine.
 
+;;; Note that the immediate SC for the index argument is disabled
+;;; because it is not possible to generate a valid error code SC for
+;;; an immediate value.
 (define-vop (check-bound)
   (:translate %check-bound)
   (:policy :fast-safe)
   (:args (array :scs (descriptor-reg))
 	 (bound :scs (any-reg descriptor-reg))
-	 (index :scs (any-reg descriptor-reg immediate) :target result))
+	 (index :scs (any-reg descriptor-reg #+nil immediate) :target result))
   (:arg-types * positive-fixnum tagged-num)
   (:results (result :scs (any-reg descriptor-reg)))
   (:result-types positive-fixnum)
-- 
GitLab