[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