PatchSet 4220 
Date: 2003/12/12 17:27:48
Author: dalibor
Branch: HEAD
Tag: (none) 
Log:
Converted parisc sysdepCallMethod to inline function

2003-12-12  Dalibor Topic <[EMAIL PROTECTED]>

        * config/parisc/sysdepCallMethod.h: New file.

        * config/Makefile.am
        (EXTRA_DIST): Added config/m68k/sysdepCallMethod.h.

        * aclocal.m4,
        config/Makefile.in:
        Regenerated.

        * config/parisc/common.h
        (sysdepCallMethod): Moved into its own file,
        config/parisc/sysdepCallMethod.h.

        * config/parisc/hpux/md.h,
        config/parisc/linux/md.h:
        Include config/m68k/sysdepCallMethod.h.

Members: 
        ChangeLog:1.1810->1.1811 
        aclocal.m4:1.80->1.81 
        config/Makefile.am:1.31->1.32 
        config/Makefile.in:1.98->1.99 
        config/parisc/common.h:1.3->1.4 
        config/parisc/hpux/md.h:1.3->1.4 
        config/parisc/linux/md.h:1.2->1.3 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.1810 kaffe/ChangeLog:1.1811
--- kaffe/ChangeLog:1.1810      Fri Dec 12 17:07:03 2003
+++ kaffe/ChangeLog     Fri Dec 12 17:27:48 2003
@@ -1,3 +1,22 @@
+2003-12-12  Dalibor Topic <[EMAIL PROTECTED]>
+
+       * config/parisc/sysdepCallMethod.h: New file.
+
+       * config/Makefile.am
+       (EXTRA_DIST): Added config/m68k/sysdepCallMethod.h.
+
+       * aclocal.m4,
+       config/Makefile.in:
+       Regenerated.
+
+       * config/parisc/common.h
+       (sysdepCallMethod): Moved into its own file,
+        config/parisc/sysdepCallMethod.h.
+
+       * config/parisc/hpux/md.h,
+       config/parisc/linux/md.h:
+       Include config/m68k/sysdepCallMethod.h.
+
 2003-12-12  Ito Kazumitsu  <[EMAIL PROTECTED]>
 
        * libraries/javalib/Makefile.am,
Index: kaffe/aclocal.m4
diff -u kaffe/aclocal.m4:1.80 kaffe/aclocal.m4:1.81
--- kaffe/aclocal.m4:1.80       Fri Dec 12 15:58:49 2003
+++ kaffe/aclocal.m4    Fri Dec 12 17:27:49 2003
@@ -8723,7 +8723,7 @@
 AU_DEFUN([fp_WITH_DMALLOC], [AM_WITH_DMALLOC])
 
 # ----------------------------------------------------------------------------
-# $Id: aclocal.m4,v 1.80 2003/12/12 15:58:49 dalibor Exp $
+# $Id: aclocal.m4,v 1.81 2003/12/12 17:27:49 dalibor Exp $
 #
 # Copyright (C) 2003 Free Software Foundation, Inc.
 #
@@ -8767,7 +8767,7 @@
 #
 # GNU Crypto m4 macro for use by VM Providers
 #
-# $Revision: 1.80 $
+# $Revision: 1.81 $
 #
 
 # process --with-gnu-crypto configure option.
Index: kaffe/config/Makefile.am
diff -u kaffe/config/Makefile.am:1.31 kaffe/config/Makefile.am:1.32
--- kaffe/config/Makefile.am:1.31       Fri Dec 12 15:58:50 2003
+++ kaffe/config/Makefile.am    Fri Dec 12 17:27:51 2003
@@ -244,6 +244,7 @@
        parisc/hpux/md.h \
        parisc/linux/config.frag \
        parisc/linux/md.h \
+       parisc/sysdepCallMethod.h \
        parisc/threads.h \
        powerpc/aix/config.frag \
        powerpc/aix/md.c \
Index: kaffe/config/Makefile.in
diff -u kaffe/config/Makefile.in:1.98 kaffe/config/Makefile.in:1.99
--- kaffe/config/Makefile.in:1.98       Fri Dec 12 15:58:50 2003
+++ kaffe/config/Makefile.in    Fri Dec 12 17:27:51 2003
@@ -486,6 +486,7 @@
        parisc/hpux/md.h \
        parisc/linux/config.frag \
        parisc/linux/md.h \
+       parisc/sysdepCallMethod.h \
        parisc/threads.h \
        powerpc/aix/config.frag \
        powerpc/aix/md.c \
Index: kaffe/config/parisc/common.h
diff -u kaffe/config/parisc/common.h:1.3 kaffe/config/parisc/common.h:1.4
--- kaffe/config/parisc/common.h:1.3    Fri Apr 26 07:49:13 2002
+++ kaffe/config/parisc/common.h        Fri Dec 12 17:27:51 2003
@@ -5,6 +5,9 @@
  * Copyright (c) 1996, 1997, 1998
  *      Transvirtual Technologies, Inc.  All rights reserved.
  *
+ * Copyright (c) 2003
+ *      Kaffe.org contributors. See ChangeLog for details.
+ *
  * See the file "license.terms" for information on usage and redistribution
  * of this file.
  *
@@ -14,54 +17,8 @@
 #ifndef __parisc_common_h
 #define __parisc_common_h
 
-typedef jdouble d4int_f (int, int, int, int);
-typedef jfloat f4int_f (int, int, int, int);
-typedef jlong j4int_f (int, int, int, int);
-
 #define NEED_STACK_ALIGN
 #define STACK_ALIGN(p)  ((((unsigned long)(p)) & 15) ^ (unsigned long)(p))
-
-#if NEED_sysdepCallMethod
-/* FIXME: this doesn't work for parisc-linux, because on parisc-linux
- * there is no fparg relocation, so we cannot just pass everything in
- * general purpose registers
- */
-
-#define sysdepCallMethod(CALL)                                         \
-do {                                                                   \
-  int argidx;                                                          \
-  int *sa;                                                             \
-  int *stackx;                                                         \
-  int st_reserve[(CALL)->nrargs];                                      \
-  asm volatile ("ldo -36(%%r30),%0" : "=r" (sa) : "r" (st_reserve));   \
-  for (argidx = 0, stackx = sa; argidx < (CALL)->nrargs; argidx++)     \
-    switch ((CALL)->callsize[argidx])                                  \
-      {                                                                        \
-      case 1:                                                          \
-       *stackx-- = (CALL)->args[argidx].i;                             \
-       break;                                                          \
-      case 2:                                                          \
-       if (!((int)stackx & 4)) stackx--;                               \
-       *stackx-- = (int) ((CALL)->args[argidx].j);                     \
-       *stackx-- = (CALL)->args[argidx].i;                             \
-       argidx++;                                                       \
-      default:                                                         \
-       break;                                                          \
-      }                                                                        \
-  if ((CALL)->rettype == 'F') {                                                \
-    (CALL)->ret->f =                                                   \
-      ((f4int_f *) ((CALL)->function)) (sa[0], sa[-1], sa[-2], sa[-3]);        \
-    break;                                                             \
-  }                                                                    \
-  if ((CALL)->rettype == 'D') {                                                \
-    (CALL)->ret->d =                                                   \
-      ((d4int_f *) ((CALL)->function)) (sa[0], sa[-1], sa[-2], sa[-3]);        \
-    break;                                                             \
-  }                                                                    \
-  (CALL)->ret->j =                                                     \
-    ((j4int_f *) ((CALL)->function)) (sa[0], sa[-1], sa[-2], sa[-3]);  \
-} while (0);
-#endif
 
 /*
  * Do an atomic compare and exchange.  The address 'A' is checked against
Index: kaffe/config/parisc/hpux/md.h
diff -u kaffe/config/parisc/hpux/md.h:1.3 kaffe/config/parisc/hpux/md.h:1.4
--- kaffe/config/parisc/hpux/md.h:1.3   Sat Oct  4 18:52:55 2003
+++ kaffe/config/parisc/hpux/md.h       Fri Dec 12 17:27:51 2003
@@ -5,6 +5,9 @@
  * Copyright (c) 1996, 1997
  *     Transvirtual Technologies, Inc.  All rights reserved.
  *
+ * Copyright (c) 2003
+ *      Kaffe.org contributors. See ChangeLog for details.
+ *
  * See the file "license.terms" for information on usage and redistribution 
  * of this file. 
  */
@@ -13,6 +16,7 @@
 #define __parisc_hpux_md_h
  
 #include "parisc/common.h"
+#include "parisc/sysdepCallMethod.h"
 #include "parisc/threads.h"
 
 #define        LIBRARYPATH     "SHLIB_PATH"
Index: kaffe/config/parisc/linux/md.h
diff -u kaffe/config/parisc/linux/md.h:1.2 kaffe/config/parisc/linux/md.h:1.3
--- kaffe/config/parisc/linux/md.h:1.2  Sat Oct  4 18:52:55 2003
+++ kaffe/config/parisc/linux/md.h      Fri Dec 12 17:27:52 2003
@@ -16,6 +16,7 @@
 #define __parisc_linux_md_h
  
 #include "parisc/common.h"
+#include "parisc/sysdepCallMethod.h"
 #include "parisc/threads.h"
 
 #define        LIBRARYPATH     "SHLIB_PATH"

_______________________________________________
kaffe mailing list
[EMAIL PROTECTED]
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe

Reply via email to