[movitz-cvs] CVS update: movitz/special-operators.lisp
Frode Vatvedt Fjeld
ffjeld at common-lisp.net
Tue Jul 13 02:26:14 UTC 2004
Update of /project/movitz/cvsroot/movitz
In directory common-lisp.net:/tmp/cvs-serv7730
Modified Files:
special-operators.lisp
Log Message:
Changed the run-time-context slot num-values from being lu32 to being
a word (i.e. a fixnum).
Date: Mon Jul 12 19:26:14 2004
Author: ffjeld
Index: movitz/special-operators.lisp
diff -u movitz/special-operators.lisp:1.25 movitz/special-operators.lisp:1.26
--- movitz/special-operators.lisp:1.25 Sat Jul 10 06:29:18 2004
+++ movitz/special-operators.lisp Mon Jul 12 19:26:14 2004
@@ -8,7 +8,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Fri Nov 24 16:22:59 2000
;;;;
-;;;; $Id: special-operators.lisp,v 1.25 2004/07/10 13:29:18 ffjeld Exp $
+;;;; $Id: special-operators.lisp,v 1.26 2004/07/13 02:26:14 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -906,7 +906,8 @@
(* 4 i))))))
cloaked-code
(when (<= 3 num-values)
- `((:locally (:movl ,(- num-values 2)
+ `((:locally (:movl ,(* +movitz-fixnum-factor+
+ (- num-values 2))
(:edi (:edi-offset num-values))))))
(loop for i downfrom (- num-values 2 1) to 0
collect
@@ -1224,9 +1225,10 @@
(loop for i from (- (length sub-forms) 3) downto 0
collecting
`(:locally (:popl (:edi (:edi-offset values ,(* i 4))))))
- (make-immediate-move (- (length sub-forms) 2) :ecx)
- `((:locally (:movl :ecx (:edi (:edi-offset num-values))))
- (:addl 2 :ecx)
+ (make-immediate-move (length sub-forms) :ecx)
+ `((:leal ((:ecx ,+movitz-fixnum-factor+) ,(* -2 +movitz-fixnum-factor+))
+ :edx)
+ (:locally (:movl :edx (:edi (:edi-offset num-values))))
(:stc))
#+ignore
(make-compiled-funcall-by-symbol 'muerte.cl::values
More information about the Movitz-cvs
mailing list