diff --git a/compiler/sparc/arith.lisp b/compiler/sparc/arith.lisp index 2b6e8f37251d60b609fa1e0a88ae072127930aec..3f20ef9145584a96063a3296abf28dd2ae1aee22 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.36 2003/10/20 01:25:01 toy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/arith.lisp,v 1.37 2003/10/27 16:58:58 toy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -96,7 +96,7 @@ (:args (x :target r :scs (any-reg zero))) (:info y) (:arg-types tagged-num - (:constant (and (signed-byte 11) (not (integer 0 0))))) + (:constant (and (signed-byte #.(- 13 vm:fixnum-tag-bits)) (not (integer 0 0))))) (:results (r :scs (any-reg))) (:result-types tagged-num) (:note "inline fixnum arithmetic")) @@ -823,7 +823,7 @@ (define-vop (fast-conditional-c/fixnum fast-conditional/fixnum) (:args (x :scs (any-reg zero))) - (:arg-types tagged-num (:constant (signed-byte 11))) + (:arg-types tagged-num (:constant (signed-byte #.(- 13 vm:fixnum-tag-bits)))) (:info target not-p y)) (define-vop (fast-conditional/signed fast-conditional) @@ -907,7 +907,7 @@ (:args (x :scs (any-reg descriptor-reg zero))) ;; This is a signed-byte 11 because after fixnum shifting, we get a ;; 13-bit number, and that's the largest immediate allowed. - (:arg-types tagged-num (:constant (signed-byte 11))) + (:arg-types tagged-num (:constant (signed-byte #.(- 13 vm:fixnum-tag-bits)))) (:info target not-p y) (:translate eql) (:generator 2 @@ -918,7 +918,7 @@ (define-vop (generic-eql-c/fixnum fast-eql-c/fixnum) ;; This is a signed-byte 11 because after fixnum shifting, we get a ;; 13-bit number, and that's the largest immediate allowed. - (:arg-types * (:constant (signed-byte 11))) + (:arg-types * (:constant (signed-byte #.(- 13 vm:fixnum-tag-bits)))) (:variant-cost 6)) @@ -1962,7 +1962,7 @@ (define-vop (fast-conditional-c/64-fixnum fast-conditional) (:args (x :scs (signed64-reg unsigned-reg signed-reg zero))) (:arg-types (:or signed64-num unsigned-num signed-num) - (:constant (signed-byte 11))) + (:constant (signed-byte #.(- 13 vm:fixnum-tag-bits)))) (:info target not-p y)) (define-vop (fast-conditional/signed64 fast-conditional)