Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory common-lisp.net:/tmp/cvs-serv5600
Modified Files:
run-time-context.lisp
Log Message:
Tune-up of %run-time-context-slot.
Date: Thu Mar 18 04:23:02 2004
Author: ffjeld
Index: movitz/losp/muerte/run-time-context.lisp
diff -u movitz/losp/muerte/run-time-context.lisp:1.1.1.1 movitz/losp/muerte/run-time-context.lisp:1.2
--- movitz/losp/muerte/run-time-context.lisp:1.1.1.1 Tue Jan 13 06:05:06 2004
+++ movitz/losp/muerte/run-time-context.lisp Thu Mar 18 04:23:01 2004
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef(a)acm.org>
;;;; Created at: Wed Nov 12 18:33:02 2003
;;;;
-;;;; $Id: run-time-context.lisp,v 1.1.1.1 2004/01/13 11:05:06 ffjeld Exp $
+;;;; $Id: run-time-context.lisp,v 1.2 2004/03/18 09:23:01 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -67,13 +67,18 @@
form
(let ((slot-name (movitz::eval-form slot-name env)))
(ecase (bt:binary-slot-type 'movitz::movitz-constant-block (intern (symbol-name slot-name) :movitz))
- (movitz::word
+ (movitz:word
`(with-inline-assembly (:returns :eax)
(:compile-form (:result-mode :eax) ,value)
(:locally (:movl :eax (:edi (:edi-offset ,slot-name))))))
- (movitz::lu32
+ (movitz:lu32
`(with-inline-assembly (:returns :untagged-fixnum-ecx)
(:compile-form (:result-mode :untagged-fixnum-ecx) ,value)
+ (:locally (:movl :ecx (:edi (:edi-offset ,slot-name))))))
+ (movitz:code-vector-word
+ `(with-inline-assembly (:returns :eax)
+ (:compile-form (:result-mode :eax) ,value)
+ (:leal (:eax ,(bt:slot-offset 'movitz:movitz-vector 'movitz::data)) :ecx)
(:locally (:movl :ecx (:edi (:edi-offset ,slot-name))))))))))
(defun (setf %run-time-context-slot) (value slot-name &optional (context (current-run-time-context)))
@@ -83,6 +88,8 @@
(word
(setf (memref context -6 (third slot) :lisp) value))
(lu32
+ (setf (memref context -6 (third slot) :unsigned-byte32) value))
+ (code-vector-word
(setf (memref context -6 (third slot) :unsigned-byte32) value)))))
(defun %run-time-context-segment-base (slot-name