From 22d85072df92f7b4401a2ebbba3cd4663d782fa2 Mon Sep 17 00:00:00 2001 From: toy <toy> Date: Fri, 11 Jul 2003 13:29:13 +0000 Subject: [PATCH] Fix indexing error in DEFINE-PARTIAL-SETTER that causes bad array references to 8- and 16-bit specialized arrays with a constant index. From Christophe Rhodes on cmucl-imp. --- compiler/mips/macros.lisp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/compiler/mips/macros.lisp b/compiler/mips/macros.lisp index 787d4bbe3..f24875a14 100644 --- a/compiler/mips/macros.lisp +++ b/compiler/mips/macros.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/macros.lisp,v 1.52 2003/03/02 18:55:56 toy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/macros.lisp,v 1.53 2003/07/11 13:29:13 toy Rel $") ;;; ;;; ********************************************************************** ;;; @@ -477,6 +477,8 @@ (:generator 5 (inst ,(ecase size (:byte 'sb) (:short 'sh)) value object - (- (* ,offset word-bytes) (* index ,scale) ,lowtag)) + (- (+ (* ,offset word-bytes) + (* index ,scale)) + ,lowtag)) (move result value)))))) -- GitLab