[movitz-cvs] CVS update: movitz/compiler.lisp

Frode Vatvedt Fjeld ffjeld at common-lisp.net
Tue Apr 6 14:34:46 UTC 2004


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

Modified Files:
	compiler.lisp 
Log Message:
Default *compiler-auto-stack-checks-p* to t.

Date: Tue Apr  6 10:34:46 2004
Author: ffjeld

Index: movitz/compiler.lisp
diff -u movitz/compiler.lisp:1.41 movitz/compiler.lisp:1.42
--- movitz/compiler.lisp:1.41	Thu Apr  1 12:27:03 2004
+++ movitz/compiler.lisp	Tue Apr  6 10:34:45 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.41 2004/04/01 17:27:03 ffjeld Exp $
+;;;; $Id: compiler.lisp,v 1.42 2004/04/06 14:34:45 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -28,7 +28,7 @@
   "Allow the compiler to emit CMOV instructions, making the code
 incompatible with pre-pentium CPUs.")
   
-(defvar *compiler-auto-stack-checks-p* nil
+(defvar *compiler-auto-stack-checks-p* t
   "Make every compiled function check upon entry that the
 stack-pointer is within bounds. Costs 3 code-bytes and a few cycles.")
 
@@ -826,7 +826,8 @@
 	       (let ((offset (cdr (assoc entry-label code-symtab))))
 		 (setf (slot-value funobj slot-name)
 		   (cons offset funobj))
-		 (vector-push offset code-vector)))
+		 (when (< offset #x100)
+		   (vector-push offset code-vector))))
 	      ((some (lambda (label) (assoc label code-symtab))
 		     (mapcar #'car rest))
 	       (vector-push 0 code-vector))))
@@ -4905,7 +4906,7 @@
 	 (values (or (restore-by-pop :eax)
 		     `((:addl ,(* 4 stack-displacement) :esp)))
 		 :nothing))))))
-    
+
 (define-compiler compile-apply-symbol (&form form &funobj funobj &env env
 					     &result-mode result-mode)
   "3.1.2.1.2.3 Function Forms"





More information about the Movitz-cvs mailing list