From 722760c29c4ac6dddc5d93d7536cf72ec85f9b0a Mon Sep 17 00:00:00 2001 From: dtc <dtc> Date: Wed, 22 Dec 1999 19:26:23 +0000 Subject: [PATCH] Replace :sparc-v9 conditional code generation to be conditional upon the :sparc-64 feature as the 64-bit state is not currently saved which would causes lossage; from Raymond Toy. --- compiler/sparc/arith.lisp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/compiler/sparc/arith.lisp b/compiler/sparc/arith.lisp index 56bf26003..e4bd7f9e9 100644 --- a/compiler/sparc/arith.lisp +++ b/compiler/sparc/arith.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/sparc/arith.lisp,v 1.16 1999/12/08 15:53:28 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/arith.lisp,v 1.17 1999/12/22 19:26:23 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -330,20 +330,20 @@ (define-vop (fast-v9-*/fixnum=>fixnum fast-fixnum-binop) (:temporary (:scs (non-descriptor-reg)) temp) (:translate *) - (:guard (backend-featurep :sparc-v9)) + (:guard (backend-featurep :sparc-64)) (:generator 4 (inst sra temp y 2) (inst mulx r x temp))) (define-vop (fast-v9-*/signed=>signed fast-signed-binop) (:translate *) - (:guard (backend-featurep :sparc-v9)) + (:guard (backend-featurep :sparc-64)) (:generator 3 (inst mulx r x y))) (define-vop (fast-v9-*/unsigned=>unsigned fast-unsigned-binop) (:translate *) - (:guard (backend-featurep :sparc-v9)) + (:guard (backend-featurep :sparc-64)) (:generator 3 (inst mulx r x y))) @@ -656,7 +656,7 @@ (type (or tn (signed-byte 13)) multiplicand)) ;; It seems that emit-multiply is only used to do an unsigned ;; multiply, so the code only does an unsigned multiply. - (cond ((backend-featurep :sparc-v9) + (cond ((backend-featurep :sparc-64) ;; Take advantage of V9's 64-bit multiplier. ;; ;; Multiply the two numbers and put the result in @@ -765,7 +765,7 @@ (:results (quo :scs (unsigned-reg) :from (:argument 1)) (rem :scs (unsigned-reg) :from (:argument 0))) (:result-types unsigned-num unsigned-num) - (:guard (not (backend-featurep :sparc-v9))) + (:guard (not (backend-featurep :sparc-64))) (:generator 300 (move rem div-high) (move quo div-low) @@ -791,7 +791,7 @@ (:results (quo :scs (unsigned-reg)) (rem :scs (unsigned-reg))) (:result-types unsigned-num unsigned-num) - (:guard (backend-featurep :sparc-v9)) + (:guard (backend-featurep :sparc-64)) (:generator 5 ;; Set dividend to be div-high and div-low (inst sllx dividend div-high 32) -- GitLab