From 37c105c00f4d99dfd43b732111f4c2ae38119cba Mon Sep 17 00:00:00 2001 From: wlott <wlott> Date: Wed, 25 Aug 1993 23:26:50 +0000 Subject: [PATCH] Fixed various macros to base the macroexpansion on the *target-backend*s byte order, because *backend* is still the machine we are cross compiling from when the backend is macroexpanded (i.e. being compiled). --- compiler/mips/array.lisp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/compiler/mips/array.lisp b/compiler/mips/array.lisp index 9d83423ea..9fadbae4c 100644 --- a/compiler/mips/array.lisp +++ b/compiler/mips/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/mips/array.lisp,v 1.43 1993/06/12 21:35:32 wlott Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/array.lisp,v 1.44 1993/08/25 23:26:50 wlott Exp $") ;;; ;;; ********************************************************************** ;;; @@ -200,7 +200,7 @@ (- (* vector-data-offset word-bytes) other-pointer-type)) (inst and temp index ,(1- elements-per-word)) - ,@(when (eq (backend-byte-order *backend*) :big-endian) + ,@(when (eq (backend-byte-order *target-backend*) :big-endian) `((inst xor temp ,(1- elements-per-word)))) ,@(unless (= bits 1) `((inst sll temp ,(1- (integer-length bits))))) @@ -224,7 +224,7 @@ (:result-types positive-fixnum) (:generator 15 (multiple-value-bind (word extra) (floor index ,elements-per-word) - ,@(when (eq (backend-byte-order *backend*) :big-endian) + ,@(when (eq (backend-byte-order *target-backend*) :big-endian) `((setf extra (logxor extra (1- ,elements-per-word))))) (loadw result object (+ word vector-data-offset) other-pointer-type) @@ -253,7 +253,7 @@ (- (* vector-data-offset word-bytes) other-pointer-type)) (inst and shift index ,(1- elements-per-word)) - ,@(when (eq (backend-byte-order *backend*) :big-endian) + ,@(when (eq (backend-byte-order *target-backend*) :big-endian) `((inst xor shift ,(1- elements-per-word)))) ,@(unless (= bits 1) `((inst sll shift ,(1- (integer-length bits))))) @@ -301,7 +301,7 @@ (:temporary (:scs (non-descriptor-reg)) temp old) (:generator 20 (multiple-value-bind (word extra) (floor index ,elements-per-word) - ,@(when (eq (backend-byte-order *backend*) :big-endian) + ,@(when (eq (backend-byte-order *target-backend*) :big-endian) `((setf extra (logxor extra (1- ,elements-per-word))))) (inst lw old object (- (* (+ word vector-data-offset) word-bytes) -- GitLab