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