Update of /project/sb-simd/cvsroot/sb-simd/sbcl-src/src/compiler/x86 In directory common-lisp.net:/tmp/cvs-serv1850/sbcl-src/src/compiler/x86
Modified Files: vm.lisp Added Files: float.lisp Log Message:
Date: Wed Aug 17 16:08:55 2005 Author: rlaakso
Index: sb-simd/sbcl-src/src/compiler/x86/vm.lisp diff -u sb-simd/sbcl-src/src/compiler/x86/vm.lisp:1.2 sb-simd/sbcl-src/src/compiler/x86/vm.lisp:1.3 --- sb-simd/sbcl-src/src/compiler/x86/vm.lisp:1.2 Fri Aug 12 13:55:38 2005 +++ sb-simd/sbcl-src/src/compiler/x86/vm.lisp Wed Aug 17 16:08:55 2005 @@ -200,6 +200,7 @@ (sap-stack stack) ; System area pointers. (single-stack stack) ; single-floats (double-stack stack :element-size 2) ; double-floats. + (xmm-stack stack :element-size 4) ; xmm #!+long-float (long-stack stack :element-size 3) ; long-floats. (complex-single-stack stack :element-size 2) ; complex-single-floats @@ -304,6 +305,12 @@ :save-p t :alternate-scs (double-stack))
+ ;; non-descriptor XMMs + (xmm-reg xmm-registers + :locations #.*xmm-regs* + :save-p t + :alternate-scs (xmm-stack)) + ;; non-descriptor LONG-FLOATs #!+long-float (long-reg float-registers @@ -334,8 +341,6 @@ :save-p t :alternate-scs (complex-long-stack))
- (xmm-reg xmm-registers - :locations #.*xmm-regs*) ;; a catch or unwind block (catch-block stack :element-size kludge-nondeterministic-catch-block-size))
@@ -376,7 +381,8 @@ (def-misc-reg-tns unsigned-reg eax ebx ecx edx ebp esp edi esi) (def-misc-reg-tns word-reg ax bx cx dx bp sp di si) (def-misc-reg-tns byte-reg al ah bl bh cl ch dl dh) - (def-misc-reg-tns single-reg fr0 fr1 fr2 fr3 fr4 fr5 fr6 fr7)) + (def-misc-reg-tns single-reg fr0 fr1 fr2 fr3 fr4 fr5 fr6 fr7) + (def-misc-reg-tns xmm-reg xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7))
;;; TNs for registers used to pass arguments (defparameter *register-arg-tns*