[movitz-cvs] CVS update: movitz/losp/muerte/more-macros.lisp

Frode Vatvedt Fjeld ffjeld at common-lisp.net
Mon Jul 12 11:09:29 UTC 2004


Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory common-lisp.net:/tmp/cvs-serv23725

Modified Files:
	more-macros.lisp 
Log Message:
Changed the low-level formatting of bignums: Now the number of bigits
is stored as factors of 4. This restricts the number of bigits to
(1- (expt 2 14)), which is still plenty.

Date: Mon Jul 12 04:09:29 2004
Author: ffjeld

Index: movitz/losp/muerte/more-macros.lisp
diff -u movitz/losp/muerte/more-macros.lisp:1.11 movitz/losp/muerte/more-macros.lisp:1.12
--- movitz/losp/muerte/more-macros.lisp:1.11	Thu Jun 10 12:27:36 2004
+++ movitz/losp/muerte/more-macros.lisp	Mon Jul 12 04:09:29 2004
@@ -10,7 +10,7 @@
 ;;;; Author:        Frode Vatvedt Fjeld <frodef at acm.org>
 ;;;; Created at:    Fri Jun  7 15:05:57 2002
 ;;;;                
-;;;; $Id: more-macros.lisp,v 1.11 2004/06/10 19:27:36 ffjeld Exp $
+;;;; $Id: more-macros.lisp,v 1.12 2004/07/12 11:09:29 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -309,12 +309,10 @@
 
 
 (define-compiler-macro %bignum-bigits (x)
-  `(with-inline-assembly (:returns :eax)
+  `(with-inline-assembly (:returns :eax :type (unsigned-byte 14))
      (:compile-form (:result-mode :eax) ,x)
      (:movzxw (:eax ,(bt:slot-offset 'movitz::movitz-bignum 'movitz::length))
-	      :ecx)
-     (:leal ((:ecx ,movitz:+movitz-fixnum-factor+))
-	    :eax)))
+	      :eax)))
 
 ;;; Some macros that aren't implemented, and we want to give compiler errors.
 





More information about the Movitz-cvs mailing list