From 9d2e680c1a0ad670be042eb42115efbb857aff81 Mon Sep 17 00:00:00 2001 From: dtc <dtc> Date: Mon, 23 Oct 2000 16:21:54 +0000 Subject: [PATCH] Fix for bignum multiplication, unsigned operation should be using a logical rather than arithmetic shift to form the result. From Juergen Weiss. --- compiler/alpha/arith.lisp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/compiler/alpha/arith.lisp b/compiler/alpha/arith.lisp index 326c9f1b4..d443dc65c 100644 --- a/compiler/alpha/arith.lisp +++ b/compiler/alpha/arith.lisp @@ -5,11 +5,11 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/arith.lisp,v 1.4 2000/01/17 16:42:03 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/arith.lisp,v 1.5 2000/10/23 16:21:54 dtc Exp $") ;;; ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/arith.lisp,v 1.4 2000/01/17 16:42:03 dtc Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/arith.lisp,v 1.5 2000/10/23 16:21:54 dtc Exp $ ;;; ;;; This file contains the VM definition arithmetic VOPs for the MIPS. ;;; @@ -695,7 +695,7 @@ (:generator 6 (inst mulq x y lo) (inst addq lo carry-in lo) - (inst sra lo 32 hi) + (inst srl lo 32 hi) (inst mskll lo 4 lo))) @@ -714,7 +714,7 @@ (inst mulq x y lo) (inst addq lo prev lo) (inst addq lo carry-in lo) - (inst sra lo 32 hi) + (inst srl lo 32 hi) (inst mskll lo 4 lo))) (define-vop (bignum-mult) -- GitLab