[movitz-cvs] CVS movitz/losp/muerte

ffjeld ffjeld at common-lisp.net
Wed Mar 21 20:20:12 UTC 2007


Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory clnet:/tmp/cvs-serv29643

Modified Files:
	segments.lisp 
Log Message:
Add some without-check-stack-limit declarations, because these
operators are used by the stack-exhausted handler.


--- /project/movitz/cvsroot/movitz/losp/muerte/segments.lisp	2005/06/10 22:43:52	1.16
+++ /project/movitz/cvsroot/movitz/losp/muerte/segments.lisp	2007/03/21 20:20:12	1.17
@@ -10,7 +10,7 @@
 ;;;; Author:        Frode Vatvedt Fjeld <frodef at acm.org>
 ;;;; Created at:    Thu May  8 14:25:06 2003
 ;;;;                
-;;;; $Id: segments.lisp,v 1.16 2005/06/10 22:43:52 ffjeld Exp $
+;;;; $Id: segments.lisp,v 1.17 2007/03/21 20:20:12 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -22,6 +22,7 @@
 
 (defun segment-register (segment-register-name)
   "Return the value of an x86 segment register, such as :cs or :ds."
+  (declare (without-check-stack-limit))
   (macrolet ((sreg (reg)
 	       `(with-inline-assembly (:returns :untagged-fixnum-ecx)
 		  (:xorl :ecx :ecx)
@@ -37,6 +38,7 @@
 (defun (setf segment-register) (value segment-register-name)
   "This function indiscriminately sets a segment register,
 which is a great way to crash the machine. So know what you're doing."
+  (declare (without-check-stack-limit))
   (check-type value (unsigned-byte 16))
   (macrolet ((set-sreg (reg)
 	       `(with-inline-assembly (:returns :nothing)
@@ -64,6 +66,7 @@
 (defun %sgdt ()
   "Return the location of the GDT, and the limit.
 Error if the GDT location is not zero modulo 4."
+  (declare (without-check-stack-limit))
   (eval-when (:compile-toplevel)
     (assert (= 4 movitz:+movitz-fixnum-factor+)))
   (without-interrupts
@@ -85,6 +88,7 @@
 (defun %lgdt (base-location limit)
   "Set the GDT according to base-location and limit.
 This is the setter corresponding to the sgdt getter."
+  (declare (without-check-stack-limit))
   (eval-when (:compile-toplevel)
     (assert (= 4 movitz:+movitz-fixnum-factor+)))
   (check-type base-location fixnum)




More information about the Movitz-cvs mailing list