dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dotgnu-pnet-commits] libjit configure.in jit/jit-apply-x86-64.h jit/...


From: Klaus Treichel
Subject: [dotgnu-pnet-commits] libjit configure.in jit/jit-apply-x86-64.h jit/...
Date: Sun, 16 Dec 2007 11:46:54 +0000

CVSROOT:        /cvsroot/dotgnu-pnet
Module name:    libjit
Changes by:     Klaus Treichel <ktreichel>      07/12/16 11:46:54

Modified files:
        .              : configure.in 
        jit            : jit-apply-x86-64.h jit-internal.h 

Log message:
        Add support for multi os archs. Fix jit_builtin_apply for x86_64 by 
adding
        r10 and r11 to the clobber list. Fix compiler warnings in
        _JIT_ALIGN_CHECK_TYPE.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/configure.in?cvsroot=dotgnu-pnet&r1=1.27&r2=1.28
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-apply-x86-64.h?cvsroot=dotgnu-pnet&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-internal.h?cvsroot=dotgnu-pnet&r1=1.28&r2=1.29

Patches:
Index: configure.in
===================================================================
RCS file: /cvsroot/dotgnu-pnet/libjit/configure.in,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- configure.in        4 Mar 2007 16:15:34 -0000       1.27
+++ configure.in        16 Dec 2007 11:46:53 -0000      1.28
@@ -428,6 +428,16 @@
 ], AC_DEFINE(HAVE_PIC_COMPUTED_GOTO, 1, [Define if you have PIC support for 
computed gotos]) piccompgoto=yes, piccompgoto=no)
 AC_MSG_RESULT($piccompgoto)
 
+dnl Check for building on a multi os system
+if test x$GCC = xyes ; then
+       multi_os_directory=`$CC -print-multi-os-directory`
+       case $multi_os_directory in
+         .) ;; # Avoid trailing /.
+         *) libdir=$libdir/$multi_os_directory ;;
+       esac
+fi
+AC_SUBST(libdir)
+
 dnl Checks for library functions.
 if test "x$suppress_libm" = "xno" ; then
        AC_CHECK_LIB(m, sin)

Index: jit/jit-apply-x86-64.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/libjit/jit/jit-apply-x86-64.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- jit/jit-apply-x86-64.h      19 Nov 2005 17:21:05 -0000      1.2
+++ jit/jit-apply-x86-64.h      16 Dec 2007 11:46:54 -0000      1.3
@@ -47,6 +47,12 @@
 #define        JIT_MEMCPY      "address@hidden"
 #endif
 
+/*
+ * We have to add all registers not saved by the caller to the clobber list
+ * and not only the registers used for parameter passing because we do
+ * function calls.
+ * Maybe we should add the xmm* registers too?
+ */
 #define        jit_builtin_apply(func,args,size,return_float,return_buf)       
\
                do { \
                        void *__func = (void *)(func); \
@@ -86,6 +92,7 @@
                                "addq %%rdx, %%rsp\n\t" \
                                : : "m"(__func), "m"(__args), "m"(__size), 
"m"(__return_buf) \
                                : "rax", "rcx", "rdx", "rdi", "rsi", "r8", 
"r9", \
+                                 "r10", "r11", \
                                  "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", \
                                  "xmm5", "xmm6", "xmm7" \
                        ); \

Index: jit/jit-internal.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/libjit/jit/jit-internal.h,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -b -r1.28 -r1.29
--- jit/jit-internal.h  4 Feb 2007 14:31:33 -0000       1.28
+++ jit/jit-internal.h  16 Dec 2007 11:46:54 -0000      1.29
@@ -66,7 +66,7 @@
        }
 
 #define        _JIT_ALIGN_FOR_TYPE(name)       \
-       ((unsigned)(&(((struct _JIT_align_##name *)0)->field)))
+       ((jit_nuint)(&(((struct _JIT_align_##name *)0)->field)))
 
 #define        _JIT_ALIGN_MAX(a,b)     \
        ((a) > (b) ? (a) : (b))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]