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

Frode Vatvedt Fjeld ffjeld at common-lisp.net
Tue Jul 20 08:54:09 UTC 2004


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

Modified Files:
	defstruct.lisp 
Log Message:
Cleaned up most ":int 107" instances. Now, we mostly use the
semi-standardized ":int 64" which means that the value in EAX wasn't
integer. The default interrupt-handler understands this and signals
the appropriate error.

Date: Tue Jul 20 01:54:09 2004
Author: ffjeld

Index: movitz/losp/muerte/defstruct.lisp
diff -u movitz/losp/muerte/defstruct.lisp:1.9 movitz/losp/muerte/defstruct.lisp:1.10
--- movitz/losp/muerte/defstruct.lisp:1.9	Thu Jul 15 14:06:55 2004
+++ movitz/losp/muerte/defstruct.lisp	Tue Jul 20 01:54:09 2004
@@ -9,7 +9,7 @@
 ;;;; Created at:    Mon Jan 22 13:10:59 2001
 ;;;; Distribution:  See the accompanying file COPYING.
 ;;;;                
-;;;; $Id: defstruct.lisp,v 1.9 2004/07/15 21:06:55 ffjeld Exp $
+;;;; $Id: defstruct.lisp,v 1.10 2004/07/20 08:54:09 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -64,10 +64,10 @@
 	    ;; type test passed, read slot
 	    ,@(if (= 4 movitz::+movitz-fixnum-factor+)
 		  `((:compile-form  (:result-mode :ebx) slot-number)
-		    (:movl (:eax :ebx #.(bt:slot-offset 'movitz::movitz-struct 'movitz::slot0))
+		    (:movl (:eax :ebx (:offset movitz-struct slot0))
 			   :eax))
 		`((:compile-form  (:result-mode :untagged-fixnum-ecx) slot-number)
-		  (:movl (:eax (:ecx 4) #.(bt:slot-offset 'movitz::movitz-struct 'movitz::slot0))
+		  (:movl (:eax (:ecx 4) (:offset movitz-struct slot0))
 			 :eax))))))
     (do-it)))
 
@@ -86,12 +86,12 @@
 	    (:movzxw (:eax ,(bt:slot-offset 'movitz::movitz-struct 'movitz::length)) :ecx)
 	    (:leal ((:ecx ,movitz::+movitz-fixnum-factor+)) :ecx)
 	    (:testb ,movitz::+movitz-fixnum-zmask+ :bl)
-	    (:jnz '(:sub-program (not-fixnum) (:int 107)))
+	    (:jnz '(:sub-program (not-fixnum) (:movl :ebx :eax) (:int 64)))
 	    (:cmpl :ecx :ebx)
-	    (:jae '(:sub-program (out-of-range) (:int 61)))
-	    ;; type test passed, read slot
-	    (:compile-form (:result-mode :ecx) value)
-	    (:movl :ecx (:eax :ebx #.(bt:slot-offset 'movitz::movitz-struct 'movitz::slot0))))))
+	    (:jae '(:sub-program (out-of-range) (:int 65)))
+	    ;; type test passed, write slot
+	    (:compile-form (:result-mode :edx) value)
+	    (:movl :edx (:eax :ebx (:offset movitz-struct slot0))))))
     (do-it)))
 
 (defun struct-accessor-prototype (object)





More information about the Movitz-cvs mailing list