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

Frode Vatvedt Fjeld ffjeld at common-lisp.net
Wed May 4 22:47:59 UTC 2005


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

Modified Files:
	image.lisp 
Log Message:
re-arranged movitz-run-time-context a bit.

Date: Thu May  5 00:47:59 2005
Author: ffjeld

Index: movitz/image.lisp
diff -u movitz/image.lisp:1.94 movitz/image.lisp:1.95
--- movitz/image.lisp:1.94	Tue May  3 22:12:53 2005
+++ movitz/image.lisp	Thu May  5 00:47:58 2005
@@ -9,7 +9,7 @@
 ;;;; Created at:    Sun Oct 22 00:22:43 2000
 ;;;; Distribution:  See the accompanying file COPYING.
 ;;;;                
-;;;; $Id: image.lisp,v 1.94 2005/05/03 20:12:53 ffjeld Exp $
+;;;; $Id: image.lisp,v 1.95 2005/05/04 22:47:58 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -22,11 +22,6 @@
     :initform :run-time-context)
    (padding
     :binary-type 3)
-   (name
-    :binary-type word
-    :initform :bootup
-    :map-binary-write 'movitz-read-and-intern
-    :map-binary-read-delayed 'movitz-word)
    (class
     :binary-type word
     :map-binary-write 'movitz-intern
@@ -38,8 +33,14 @@
     :map-binary-write 'movitz-read-and-intern
     :map-binary-read-delayed 'movitz-word
     :initarg :slots
-    :initform #()
+    :initform #(:init nil)
     :accessor run-time-context-slots)
+   (scratch1
+    :binary-type word
+    :initform 0)
+   (scratch2
+    :binary-type word
+    :initform 0)
    (fast-car
     :binary-type code-vector-word
     :initform nil
@@ -58,12 +59,6 @@
     :map-binary-write 'movitz-intern-code-vector
     :map-binary-read-delayed 'movitz-word-code-vector
     :binary-tag :primitive-function)
-   (fast-cdddr
-    :binary-type code-vector-word
-    :initform nil
-    :map-binary-write 'movitz-intern-code-vector
-    :map-binary-read-delayed 'movitz-word-code-vector
-    :binary-tag :primitive-function)
    (fast-car-ebx
     :binary-type code-vector-word
     :initform nil
@@ -118,11 +113,6 @@
     :map-binary-write 'movitz-intern-code-vector
     :map-binary-read-delayed 'movitz-word-code-vector
     :binary-tag :primitive-function)
-   ;; per thread parameters
-   (dynamic-env
-    :binary-type word
-    :initform 0)
-   ;; More per-thread parameters
    (unwind-protect-tag
     :binary-type word
     :map-binary-read-delayed 'movitz-word
@@ -133,6 +123,11 @@
     :map-binary-read-delayed 'movitz-word
     :map-binary-write 'movitz-read-and-intern
     :initform 'muerte::restart-protect-tag)
+   (new-unbound-value
+    :binary-type word
+    :map-binary-read-delayed 'movitz-word
+    :map-binary-write 'movitz-read-and-intern
+    :initform 'unbound)
    (stack-bottom			; REMEMBER BOCHS!
     :binary-type word
     :initform #x0ff000)
@@ -162,11 +157,6 @@
     :binary-type movitz-symbol
     :reader movitz-run-time-context-null-symbol
     :initarg :null-symbol)
-   (new-unbound-value
-    :binary-type word
-    :map-binary-read-delayed 'movitz-word
-    :map-binary-write 'movitz-read-and-intern
-    :initform 'unbound)
    ;; primitive functions global constants
    (pop-current-values
     :binary-type code-vector-word
@@ -288,21 +278,37 @@
     :binary-tag :global-function
     :map-binary-write 'movitz-intern
     :map-binary-read-delayed 'movitz-word)
-   (complicated-class-of
-    :binary-type word
-    :binary-tag :global-function
-    :map-binary-read-delayed 'movitz-word
-    :map-binary-write 'movitz-intern)
    (complicated-compare
     :binary-type word
     :binary-tag :global-function
     :map-binary-read-delayed 'movitz-word
     :map-binary-write 'movitz-intern)
+   (dynamic-env
+    :binary-type word
+    :initform 0)
+   (the-class-t
+    :binary-type word
+    :initform t
+    :map-binary-write (lambda (x type)
+			(declare (ignore type))
+			(movitz-read-and-intern (funcall 'muerte::movitz-find-class x)
+						'word))
+    :map-binary-read-delayed 'movitz-word)
+   (copy-funobj
+    :binary-type word
+    ;; :accessor movitz-run-time-context-copy-funobj
+    :initform 'muerte::copy-funobj
+    :map-binary-write (lambda (name type)
+			(declare (ignore type))
+			(movitz-intern (movitz-env-named-function name))))
+
+
    (num-values
     :binary-type word			; Fixnum
     :initform 0)
    (values
     :binary-type #.(* 4 +movitz-multiple-values-limit+))
+   
    (cons-pointer
     :binary-type code-vector-word
     :initform nil
@@ -349,46 +355,6 @@
 					  map))
 			   'word)))
     :map-binary-read-delayed 'movitz-word)
-   ;; Some well-known classes
-   (the-class-t
-    :binary-type word
-    :initform t
-    :map-binary-write (lambda (x type)
-			(declare (ignore type))
-			(movitz-read-and-intern (funcall 'muerte::movitz-find-class x)
-						'word))
-    :map-binary-read-delayed 'movitz-word)
-   (exception-handlers
-    :binary-type word
-    :map-binary-write 'movitz-intern
-    :map-binary-read-delayed 'movitz-word
-    :initarg :exception-handlers
-    :accessor movitz-run-time-context-exception-handlers)
-   (interrupt-descriptor-table
-    :binary-type word
-    :accessor movitz-run-time-context-interrupt-descriptor-table
-    :initform (make-array 256 :initial-element 'muerte::default-interrupt-trampoline)
-    :map-binary-read-delayed 'movitz-word
-    :map-binary-write 'map-interrupt-trampolines-to-idt)
-   (toplevel-funobj
-    :binary-type word
-    :initform nil
-    :accessor movitz-run-time-context-toplevel-funobj
-    :map-binary-write 'movitz-intern
-    :map-binary-read-delayed 'movitz-word)
-   (global-properties
-    :binary-type word
-    :initform nil
-    :accessor movitz-run-time-context-global-properties
-    :map-binary-write 'movitz-intern
-    :map-binary-read-delayed 'movitz-word)
-   (copy-funobj
-    :binary-type word
-    ;; :accessor movitz-run-time-context-copy-funobj
-    :initform 'muerte::copy-funobj
-    :map-binary-write (lambda (name type)
-			(declare (ignore type))
-			(movitz-intern (movitz-env-named-function name))))
    (physical-address-offset
     :binary-type lu32
     :initform (image-ds-segment-base *image*))
@@ -399,22 +365,10 @@
     :map-binary-read-delayed (lambda (x type)
 			       (declare (ignore x type))
 			       (movitz-read nil)))
-   (stack-vector
-    :binary-type word
-    :initform nil
-    :map-binary-write 'movitz-read-and-intern
-    :map-binary-read-delayed (lambda (x type)
-			       (declare (ignore x type))
-			       (movitz-read nil)))
    (self
     :binary-type word
     :initform 6
     :map-binary-read-delayed 'movitz-word)
-   (parent
-    :binary-type word
-    :initform nil
-    :map-binary-write 'movitz-read-and-intern
-    :map-binary-read-delayed 'movitz-word)
    (protect-non-pointer-area
     :binary-type lu32
     :initform 3)
@@ -436,12 +390,6 @@
     :binary-type lu32
     :initform 0)
    (non-pointers-end :binary-type :label) ; ========= NON-POINTER-END =======
-   (scratch1
-    :binary-type word
-    :initform 0)
-   (scratch2
-    :binary-type word
-    :initform 0)
    (ret-trampoline
     :binary-type code-vector-word
     :map-binary-write 'movitz-intern-code-vector
@@ -456,7 +404,43 @@
     :binary-type code-vector-word
     :map-binary-write 'movitz-intern-code-vector
     :map-binary-read-delayed 'movitz-word-code-vector
-    :binary-tag :primitive-function))
+    :binary-tag :primitive-function)
+   (complicated-class-of
+    :binary-type word
+    :binary-tag :global-function
+    :map-binary-read-delayed 'movitz-word
+    :map-binary-write 'movitz-intern)
+   (stack-vector
+    :binary-type word
+    :initform nil
+    :map-binary-write 'movitz-read-and-intern
+    :map-binary-read-delayed (lambda (x type)
+			       (declare (ignore x type))
+			       (movitz-read nil)))
+   (exception-handlers
+    :binary-type word
+    :map-binary-write 'movitz-intern
+    :map-binary-read-delayed 'movitz-word
+    :initarg :exception-handlers
+    :accessor movitz-run-time-context-exception-handlers)
+   (interrupt-descriptor-table
+    :binary-type word
+    :accessor movitz-run-time-context-interrupt-descriptor-table
+    :initform (make-array 256 :initial-element 'muerte::default-interrupt-trampoline)
+    :map-binary-read-delayed 'movitz-word
+    :map-binary-write 'map-interrupt-trampolines-to-idt)
+   (toplevel-funobj
+    :binary-type word
+    :initform nil
+    :accessor movitz-run-time-context-toplevel-funobj
+    :map-binary-write 'movitz-intern
+    :map-binary-read-delayed 'movitz-word)
+   (global-properties
+    :binary-type word
+    :initform nil
+    :accessor movitz-run-time-context-global-properties
+    :map-binary-write 'movitz-intern
+    :map-binary-read-delayed 'movitz-word))
   (:slot-align null-symbol -5))
 
 (defun atomically-continuation-simple-pf (pf-name)




More information about the Movitz-cvs mailing list