[movitz-cvs] CVS update: movitz/losp/muerte/arrays.lisp
Frode Vatvedt Fjeld
ffjeld at common-lisp.net
Tue Aug 10 12:58:23 UTC 2004
Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory common-lisp.net:/tmp/cvs-serv29984/losp/muerte
Modified Files:
arrays.lisp
Log Message:
Add some support for *compiler-nonlocal-lispval-{read,write}-segment-prefix*.
Date: Tue Aug 10 05:58:23 2004
Author: ffjeld
Index: movitz/losp/muerte/arrays.lisp
diff -u movitz/losp/muerte/arrays.lisp:1.41 movitz/losp/muerte/arrays.lisp:1.42
--- movitz/losp/muerte/arrays.lisp:1.41 Tue Jul 27 06:46:39 2004
+++ movitz/losp/muerte/arrays.lisp Tue Aug 10 05:58:22 2004
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Sun Feb 11 23:14:04 2001
;;;;
-;;;; $Id: arrays.lisp,v 1.41 2004/07/27 13:46:39 ffjeld Exp $
+;;;; $Id: arrays.lisp,v 1.42 2004/08/10 12:58:22 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -309,7 +309,8 @@
(:addl ,movitz:+movitz-fixnum-factor+ :eax)
(:jmp 'return)
:any-t
- (:movl (:eax :ebx ,(bt:slot-offset 'movitz:movitz-basic-vector 'movitz::data))
+ (,movitz:*compiler-nonlocal-lispval-read-segment-prefix*
+ :movl (:eax :ebx ,(bt:slot-offset 'movitz:movitz-basic-vector 'movitz::data))
:eax)
return)))
(do-it)))))
@@ -346,7 +347,8 @@
;; t?
(:cmpl ,(movitz:basic-vector-type-tag :any-t) :ecx)
(:jne 'not-any-t-vector)
- (:movl :eax
+ (,movitz:*compiler-nonlocal-lispval-write-segment-prefix*
+ :movl :eax
(:ebx :edx ,(bt:slot-offset 'movitz:movitz-basic-vector 'movitz::data)))
(:jmp 'return)
@@ -433,6 +435,7 @@
`(setf (memref ,simple-vector 2 ,index :lisp) ,value))
(defun svref%unsafe (simple-vector index)
+;; (compiler-macro-call svref%unsafe simple-vector index))
(with-inline-assembly (:returns :eax)
(:compile-two-forms (:eax :ebx) simple-vector index)
(:movl (:eax :ebx #.(bt:slot-offset 'movitz:movitz-basic-vector 'movitz::data)) :eax)))
More information about the Movitz-cvs
mailing list