Update of /project/movitz/cvsroot/movitz/losp/muerte In directory common-lisp.net:/tmp/cvs-serv23744
Modified Files: basic-macros.lisp Log Message: Re-arranged many details about *movitz-nil*, movitz-null, and how it relates to the cons and symbol binary-classes etc. This should now be slightly less messy, and slightly more efficient.
Date: Wed Jul 28 17:13:18 2004 Author: ffjeld
Index: movitz/losp/muerte/basic-macros.lisp diff -u movitz/losp/muerte/basic-macros.lisp:1.33 movitz/losp/muerte/basic-macros.lisp:1.34 --- movitz/losp/muerte/basic-macros.lisp:1.33 Fri Jul 23 07:36:47 2004 +++ movitz/losp/muerte/basic-macros.lisp Wed Jul 28 17:13:18 2004 @@ -9,7 +9,7 @@ ;;;; Created at: Wed Nov 8 18:44:57 2000 ;;;; Distribution: See the accompanying file COPYING. ;;;; -;;;; $Id: basic-macros.lisp,v 1.33 2004/07/23 14:36:47 ffjeld Exp $ +;;;; $Id: basic-macros.lisp,v 1.34 2004/07/29 00:13:18 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -1040,7 +1040,8 @@ (do-case (t :boolean-cf=1 :labels (boundp-done)) (:compile-form (:result-mode :eax) ,symbol) (:cmpl :edi :eax) - (:je 'boundp-done) ; if ZF=0, then CF=0 + (:cmc) + (:je 'boundp-done) ; if ZF=1, then CF=1 after CMC (:call-local-pf dynamic-find-binding) (:jc 'boundp-done) (:movl (:eax #.(bt:slot-offset 'movitz:movitz-symbol 'movitz::value)) :eax) @@ -1054,6 +1055,9 @@ `(progn (defparameter ,name ,init-form ,docstring) (define-symbol-macro ,name (%symbol-global-value ',name)))) + +(define-compiler-macro assembly-register (register) + `(with-inline-assembly (:returns ,register)))
(require :muerte/setf)