[kaffe] CVS kaffe (dalibor): Converted parisc sysdepCallMethod to inline function
Kaffe CVS
Kaffe Mailing List <kaffe@kaffe.org>
Fri Dec 12 09:30:03 2003
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 <robilad@kaffe.org>
* 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 <robilad@kaffe.org>
+
+ * 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 <kaz@maczuka.gcd.org>
* 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"