From: Juho S. <js...@us...> - 2008-01-01 14:45:38
|
Update of /cvsroot/sbcl/sbcl/src/compiler/x86-64 In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv9583/src/compiler/x86-64 Modified Files: c-call.lisp Log Message: 1.0.13.6: Add missing sb-xc-host definition for sign-extend * Patch by David Lichteblau Index: c-call.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/x86-64/c-call.lisp,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- c-call.lisp 30 Nov 2007 17:46:10 -0000 1.22 +++ c-call.lisp 1 Jan 2008 14:45:33 -0000 1.23 @@ -210,10 +210,17 @@ :sc (sc-or-lose 'dword-reg) :offset (tn-offset val))))) +#-sb-xc-host (defun sign-extend (x) (declare (type (signed-byte 32) x)) (sign-extend x)) +#+sb-xc-host +(defun sign-extend (x) + (if (logbitp 31 x) + (dpb x (byte 32 0) -1) + x)) + (define-vop (foreign-symbol-sap) (:translate foreign-symbol-sap) (:policy :fast-safe) |