Update of /project/movitz/cvsroot/movitz In directory common-lisp.net:/tmp/cvs-serv6720
Modified Files: compiler.lisp Log Message: Changed make-stack-setup-code to push any number of EDIs rather than subtracting from ESP, so as to keep the stack GC-safe. I don't know if this is a viable long-term solution to this problem, though.
Date: Tue Jul 13 15:41:07 2004 Author: ffjeld
Index: movitz/compiler.lisp diff -u movitz/compiler.lisp:1.74 movitz/compiler.lisp:1.75 --- movitz/compiler.lisp:1.74 Mon Jul 12 02:11:07 2004 +++ movitz/compiler.lisp Tue Jul 13 15:41:06 2004 @@ -8,7 +8,7 @@ ;;;; Created at: Wed Oct 25 12:30:49 2000 ;;;; Distribution: See the accompanying file COPYING. ;;;; -;;;; $Id: compiler.lisp,v 1.74 2004/07/12 09:11:07 ffjeld Exp $ +;;;; $Id: compiler.lisp,v 1.75 2004/07/13 22:41:06 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -1175,14 +1175,6 @@ ;;; (t (warn "1-req-1-opt failed")))))) ;;; (t nil))))))
- -(defun make-compiled-stack-frame-init (stack-frame-init) - (case stack-frame-init - (0 nil) - (1 '((:pushl :edi))) - (2 '((:pushl :edi) (:pushl :edi))) - (t `((:subl ,(* 4 stack-frame-init) :esp))))) - (defun movitz-compile-file (path &key ((:image *image*) *image*) load-priority (delete-file-p nil)) @@ -3895,6 +3887,9 @@ min-args max-args)))))
(defun make-stack-setup-code (stack-setup-size) + (loop repeat stack-setup-size + collect '(:pushl :edi)) + #+ignore (case stack-setup-size (0 nil) (1 '((:pushl :edi)))