[kaffe] CVS kaffe (guilhem): Fixlet for sparc OSs with SA_SIGINFO defined.
Kaffe CVS
cvs-commits at kaffe.org
Mon Jun 27 05:06:23 PDT 2005
PatchSet 6667
Date: 2005/06/27 12:01:22
Author: guilhem
Branch: HEAD
Tag: (none)
Log:
Fixlet for sparc OSs with SA_SIGINFO defined.
Members:
ChangeLog:1.4192->1.4193
config/sparc/bsdi3/md.h:INITIAL->1.8
config/sparc/linux/md.h:INITIAL->1.11
config/sparc/netbsd1/md.h:1.4->1.5
config/sparc/nextstep3/md.h:1.3->1.4
config/sparc/openbsd2/md.h:INITIAL->1.11
config/sparc/sunos4/md.h:INITIAL->1.11
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4192 kaffe/ChangeLog:1.4193
--- kaffe/ChangeLog:1.4192 Mon Jun 27 09:11:02 2005
+++ kaffe/ChangeLog Mon Jun 27 12:01:22 2005
@@ -1,5 +1,15 @@
2005-06-27 Guilhem Lavaux <guilhem at kaffe.org>
+ * config/sparc/bsdi3/md.h,
+ config/sparc/linux/md.h,
+ config/sparc/netbsd1/md.h,
+ config/sparc/nextstep3/md.h,
+ config/sparc/openbsd2/md.h,
+ config/sparc/sunos4/md.h: Undefine SA_SIGINFO as we need the
+ signal call without the siginfo structure.
+
+2005-06-27 Guilhem Lavaux <guilhem at kaffe.org>
+
* libraries/javalib/gnu/classpath/tools/Util.java
(Util): Really search the default classpath if no class is found in
the current directory.
===================================================================
Checking out kaffe/config/sparc/bsdi3/md.h
RCS: /home/cvs/kaffe/kaffe/config/sparc/bsdi3/md.h,v
VERS: 1.8
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/sparc/bsdi3/md.h Mon Jun 27 12:06:22 2005
@@ -0,0 +1,37 @@
+/*
+ * sparc/bsdi3/md.h
+ * BSDI3 sparc configuration information.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __sparc_netbsd1_md_h
+#define __sparc_netbsd1_md_h
+
+#include "sparc/common.h"
+#include "sparc/threads.h"
+#if defined(HAVE_SYS_RESOURCE_H)
+#include <sys/resource.h>
+#endif
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+
+#undef SA_SIGINFO
+#define SIGNAL_ARGS(sig, sc) int sig, int code, struct sigcontext* sc
+#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
+#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
+#define SIGNAL_PC(scp) ((scp)->sc_pc)
+#define STACK_POINTER(scp) ((scp)->sc_sp)
+
+#if defined(TRANSLATOR)
+#include "jit-md.h"
+#endif
+
+#include "kaffe-unix-stack.h"
+
+#endif
===================================================================
Checking out kaffe/config/sparc/linux/md.h
RCS: /home/cvs/kaffe/kaffe/config/sparc/linux/md.h,v
VERS: 1.11
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/sparc/linux/md.h Mon Jun 27 12:06:22 2005
@@ -0,0 +1,65 @@
+/*
+ * sparc/linux/md.h
+ * Linux sparc configuration information.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __sparc_linux_md_h
+#define __sparc_linux_md_h
+
+#include "sparc/common.h"
+#include "sparc/threads.h"
+
+#undef SP_OFFSET
+#undef FP_OFFSET
+#define SP_OFFSET 0
+#define FP_OFFSET 1
+
+#define CONTEXT_SWITCH(F,T) sparcLinuxContextSwitch(F, T)
+
+/**/
+/* Extra exception handling information. */
+/**/
+#if defined(HAVE_FEATURES_H)
+#include <features.h>
+#endif
+#if defined(HAVE_SIGCONTEXT_H)
+#include <sigcontext.h>
+#endif
+#include <asm/ptrace.h>
+#if defined(HAVE_SYS_RESOURCE_H)
+#include <sys/resource.h>
+#endif
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#if defined(__arch64__)
+#include "sigcontextinfo64.h"
+#else /* !defined(__arch64__) */
+#include "sigcontextinfo32.h"
+#endif
+
+/* Function prototype for signal handlers */
+#undef SA_SIGINFO
+#define SIGNAL_ARGS(sig, sc) int sig, struct sigcontext* sc
+#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
+#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
+#define SIGNAL_PC(scp) (GET_PC(scp))
+#define STACK_POINTER(scp) (GET_STACK(scp))
+
+#if defined(TRANSLATOR)
+#include "jit-md.h"
+#endif
+
+/* Linux requires a little initialisation */
+extern void init_md(void);
+#define INIT_MD() init_md()
+
+#include "kaffe-unix-stack.h"
+
+#endif
Index: kaffe/config/sparc/netbsd1/md.h
diff -u kaffe/config/sparc/netbsd1/md.h:1.4 kaffe/config/sparc/netbsd1/md.h:1.5
--- kaffe/config/sparc/netbsd1/md.h:1.4 Thu Apr 22 16:28:14 2004
+++ kaffe/config/sparc/netbsd1/md.h Mon Jun 27 12:01:27 2005
@@ -15,6 +15,7 @@
#include "sparc/common.h"
#include "sparc/threads.h"
+#undef SA_SIGINFO
#define SIGNAL_ARGS(sig, sc) int sig, int code, struct sigcontext* sc
#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
Index: kaffe/config/sparc/nextstep3/md.h
diff -u kaffe/config/sparc/nextstep3/md.h:1.3 kaffe/config/sparc/nextstep3/md.h:1.4
--- kaffe/config/sparc/nextstep3/md.h:1.3 Thu Apr 22 16:28:14 2004
+++ kaffe/config/sparc/nextstep3/md.h Mon Jun 27 12:01:27 2005
@@ -15,6 +15,7 @@
#include "sparc/common.h"
#include "sparc/threads.h"
+#undef SA_SIGINFO
#define SIGNAL_ARGS(sig, sc) int sig, int code, struct sigcontext* sc
#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
===================================================================
Checking out kaffe/config/sparc/openbsd2/md.h
RCS: /home/cvs/kaffe/kaffe/config/sparc/openbsd2/md.h,v
VERS: 1.11
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/sparc/openbsd2/md.h Mon Jun 27 12:06:22 2005
@@ -0,0 +1,46 @@
+/*
+ * sparc/openbsd2/md.h
+ * OpenBSD Sparc configuration information.
+ *
+ * Copyright (c) 1996, 1997, 1998
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __sparc_openbsd2_md_h
+#define __sparc_openbsd2_md_h
+
+#include "sparc/common.h"
+#include "sparc/threads.h"
+#if defined(HAVE_SYS_TIME_H)
+#include <sys/time.h>
+#endif
+#if defined(HAVE_SYS_RESOURCE_H)
+#include <sys/resource.h>
+#endif
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+
+#undef SP_OFFSET
+#define SP_OFFSET 2
+
+/* Function prototype for signal handlers */
+#undef SA_SIGINFO
+#define SIGNAL_ARGS(sig, sc) int sig, int code, struct sigcontext* sc
+#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
+#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
+#define SIGNAL_PC(scp) ((scp)->sc_pc)
+#define STACK_POINTER(scp) ((scp)->sc_sp)
+
+#define STACK_STRUCT struct sigaltstack
+
+#if defined(TRANSLATOR)
+#include "jit-md.h"
+#endif
+
+#include "kaffe-unix-stack.h"
+
+#endif
===================================================================
Checking out kaffe/config/sparc/sunos4/md.h
RCS: /home/cvs/kaffe/kaffe/config/sparc/sunos4/md.h,v
VERS: 1.11
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/sparc/sunos4/md.h Mon Jun 27 12:06:22 2005
@@ -0,0 +1,55 @@
+/*
+ * sparc/sunos4/md.h
+ * SunOS4 sparc configuration information.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __sparc_sunos_md_h
+#define __sparc_sunos_md_h
+
+#include "sparc/common.h"
+#include "sparc/threads.h"
+#if defined(HAVE_SYS_RESOURCE_H)
+#include <sys/resource.h>
+#endif
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+
+/*
+ * Redefine stack pointer offset.
+ */
+#undef SP_OFFSET
+#define SP_OFFSET 2
+
+#undef SA_SIGINFO
+#define SIGNAL_ARGS(sig, sc) int sig, int code, struct sigcontext* sc, char* addr
+#define SIGNAL_CONTEXT_POINTER(scp) struct sigcontext* scp
+#define GET_SIGNAL_CONTEXT_POINTER(scp) (scp)
+#define SIGNAL_PC(scp) ((scp)->sc_pc)
+#define STACK_POINTER(scp) ((scp)->sc_sp)
+
+#if defined(TRANSLATOR)
+#include "jit-md.h"
+#endif
+
+struct sockaddr;
+extern int rename(const char*, const char*);
+extern int remove(const char*);
+extern int socket(int, int, int);
+extern ssize_t sendto(int, const void*, size_t, int, const struct sockaddr*, int);
+extern int setsockopt(int, int, int, const void*, int);
+extern int getsockopt(int, int, int, void*, int*);
+extern int getsockname(int, struct sockaddr*, int*);
+extern int getpeername(int, struct sockaddr*, int*);
+extern int select(int, fd_set*, fd_set*, fd_set*, struct timeval*);
+extern int vfprintf(FILE *, char *, va_list);
+
+#include "kaffe-unix-stack.h"
+
+#endif
More information about the kaffe
mailing list