From c9b3f8606eca13c3b48cbc38fb27a0394565e802 Mon Sep 17 00:00:00 2001
From: dtc <dtc>
Date: Wed, 21 Jan 1998 22:30:44 +0000
Subject: [PATCH] Complete the signed-array support for the Alpha backend.
 Adding signed-byte 8 and 16 accessors which were trivial because there was
 already support for signed partial accessors. Fix a typo in
 define-partial-setter signed short constant.

---
 compiler/alpha/array.lisp  | 11 ++++++++++-
 compiler/alpha/macros.lisp |  7 ++++---
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/compiler/alpha/array.lisp b/compiler/alpha/array.lisp
index 39f980837..7da5a7856 100644
--- a/compiler/alpha/array.lisp
+++ b/compiler/alpha/array.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/alpha/array.lisp,v 1.3 1998/01/21 19:23:48 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/array.lisp,v 1.4 1998/01/21 22:30:43 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -146,8 +146,17 @@
 (def-full-data-vector-frobs simple-array-unsigned-byte-32 unsigned-num
   unsigned-reg)
 
+#+signed-array
+(def-partial-data-vector-frobs simple-array-signed-byte-8 positive-fixnum
+  :byte t signed-reg signed-reg)
+
+#+signed-array
+(def-partial-data-vector-frobs simple-array-signed-byte-16 positive-fixnum
+  :short t signed-reg signed-reg)
+
 #+signed-array
 (def-full-data-vector-frobs simple-array-signed-byte-30 tagged-num any-reg)
+
 #+signed-array
 (def-full-data-vector-frobs simple-array-signed-byte-32 signed-num signed-reg)
 
diff --git a/compiler/alpha/macros.lisp b/compiler/alpha/macros.lisp
index d4dc99121..88a7b8273 100644
--- a/compiler/alpha/macros.lisp
+++ b/compiler/alpha/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/alpha/macros.lisp,v 1.2 1994/10/31 04:39:51 ram Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/macros.lisp,v 1.3 1998/01/21 22:30:44 dtc Rel $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -441,8 +441,9 @@
 		    `((inst ldq_u temp (- (+ (* ,offset word-bytes)
 					     (* index ,scale)) ,lowtag)
 			    object)
-		      (inst lda temp1  (- (+ (* ,offset word-bytes)
-					     (* index ,scale)) ,lowtag))
+		      (inst lda temp1 (- (+ (* ,offset word-bytes)
+					    (* index ,scale)) ,lowtag)
+			    object)
 		      (inst extwl temp temp1 temp)
 		      (inst sll temp 48 temp)
 		      (inst sra temp 48 value))
-- 
GitLab