[kaffe] CVS kaffe (dalibor): Fixed build on sparc-linux

Kaffe CVS cvs-commits at kaffe.org
Sun Jun 6 08:10:02 PDT 2004


PatchSet 4828 
Date: 2004/06/06 15:04:48
Author: dalibor
Branch: HEAD
Tag: (none) 
Log:
Fixed build on sparc-linux

2004-06-06  Dalibor Topic  <robilad at kaffe.org>

        * config/sparc/linux/sigcontextinfo32.h,
        config/sparc/linux/sigcontextinfo64.h:
        New files, taken from glibc 2.3.2.

        * THIRDPARTY:
        Updated.

        * config/Makefile.am:
        (EXTRA_DIST) Updated for new files.

        * config/Makefile.in:
        Regenerated.

        * config/sparc/linux/md.h:
        (SIGNAL_PC, STACK_POINTER) Use glibc sigcontextinfo.

        Reported by: Karl Trygve Kalleberg <karltk at gentoo.org>

Members: 
	ChangeLog:1.2396->1.2397 
	THIRDPARTY:1.14->1.15 
	config/Makefile.am:1.39->1.40 
	config/Makefile.in:1.129->1.130 
	config/sparc/linux/md.h:1.8->1.9 
	config/sparc/linux/sigcontextinfo32.h:INITIAL->1.1 
	config/sparc/linux/sigcontextinfo64.h:INITIAL->1.1 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.2396 kaffe/ChangeLog:1.2397
--- kaffe/ChangeLog:1.2396	Sun Jun  6 12:48:36 2004
+++ kaffe/ChangeLog	Sun Jun  6 15:04:48 2004
@@ -1,3 +1,23 @@
+2004-06-06  Dalibor Topic  <robilad at kaffe.org>
+
+        * config/sparc/linux/sigcontextinfo32.h,
+        config/sparc/linux/sigcontextinfo64.h:
+	New files, taken from glibc 2.3.2.
+
+        * THIRDPARTY:
+	Updated.
+
+        * config/Makefile.am:
+	(EXTRA_DIST) Updated for new files.
+
+        * config/Makefile.in:
+	Regenerated.
+
+        * config/sparc/linux/md.h:
+	(SIGNAL_PC, STACK_POINTER) Use glibc sigcontextinfo.
+
+	Reported by: Karl Trygve Kalleberg <karltk at gentoo.org>
+
 2004-06-05  Dalibor Topic  <robilad at kaffe.org>
 
         * configure.ac:
Index: kaffe/THIRDPARTY
diff -u kaffe/THIRDPARTY:1.14 kaffe/THIRDPARTY:1.15
--- kaffe/THIRDPARTY:1.14	Sun Jun  6 12:48:37 2004
+++ kaffe/THIRDPARTY	Sun Jun  6 15:04:49 2004
@@ -179,7 +179,8 @@
 
 At the time of writing, Kaffe uses getaddrinfo 1.6.1.
 
-* Alpha, ARM, M68k and SPARC atomic compare_and_swap
+* Alpha, ARM, M68k and SPARC atomic compare_and_swap, SPARC Linux
+  sigcontextinfo
 
 Taken from GNU libc 2.3.2, which is licensed under the GNU Lesser General 
 Public License. See file license-lesser.terms for details.
Index: kaffe/config/Makefile.am
diff -u kaffe/config/Makefile.am:1.39 kaffe/config/Makefile.am:1.40
--- kaffe/config/Makefile.am:1.39	Wed Mar 24 11:06:11 2004
+++ kaffe/config/Makefile.am	Sun Jun  6 15:04:49 2004
@@ -312,6 +312,8 @@
 	sparc/linux/jit-md.h \
 	sparc/linux/md.c \
 	sparc/linux/md.h \
+	sparc/linux/sigcontextinfo32.h \
+	sparc/linux/sigcontextinfo64.h \
 	sparc/netbsd1/config.frag \
 	sparc/netbsd1/jit-md.h \
 	sparc/netbsd1/md.c \
Index: kaffe/config/Makefile.in
diff -u kaffe/config/Makefile.in:1.129 kaffe/config/Makefile.in:1.130
--- kaffe/config/Makefile.in:1.129	Sun Jun  6 12:48:48 2004
+++ kaffe/config/Makefile.in	Sun Jun  6 15:04:49 2004
@@ -614,6 +614,8 @@
 	sparc/linux/jit-md.h \
 	sparc/linux/md.c \
 	sparc/linux/md.h \
+	sparc/linux/sigcontextinfo32.h \
+	sparc/linux/sigcontextinfo64.h \
 	sparc/netbsd1/config.frag \
 	sparc/netbsd1/jit-md.h \
 	sparc/netbsd1/md.c \
Index: kaffe/config/sparc/linux/md.h
diff -u kaffe/config/sparc/linux/md.h:1.8 kaffe/config/sparc/linux/md.h:1.9
--- kaffe/config/sparc/linux/md.h:1.8	Wed Apr 28 12:01:51 2004
+++ kaffe/config/sparc/linux/md.h	Sun Jun  6 15:04:50 2004
@@ -38,13 +38,18 @@
 #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 */
 #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) ((scp)->sigc_pc)
-#define STACK_POINTER(scp) ((scp)->sigc_sp)
+#define SIGNAL_PC(scp) (GET_PC(scp))
+#define STACK_POINTER(scp) (GET_STACK(scp))
 
 #if defined(TRANSLATOR)
 #include "jit-md.h"
===================================================================
Checking out kaffe/config/sparc/linux/sigcontextinfo32.h
RCS:  /home/cvs/kaffe/kaffe/config/sparc/linux/sigcontextinfo32.h,v
VERS: 1.1
***************
--- /dev/null	Sun Aug  4 19:57:58 2002
+++ kaffe/config/sparc/linux/sigcontextinfo32.h	Sun Jun  6 15:09:32 2004
@@ -0,0 +1,29 @@
+/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Jakub Jelinek <jakub at redhat.com>, 1999.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#define SIGCONTEXT struct sigcontext *
+#define SIGCONTEXT_EXTRA_ARGS
+#define GET_PC(__ctx)	((void *) ((__ctx)->si_regs.pc))
+#define ADVANCE_STACK_FRAME(__next) \
+	((void *) (((unsigned *)(__next))+14))
+
+#define GET_STACK(__ctx)	((void *) (__ctx)->si_regs.u_regs[14])
+#define GET_FRAME(__ctx)	ADVANCE_STACK_FRAME (GET_STACK(__ctx))
+#define CALL_SIGHANDLER(handler, signo, ctx) \
+  (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
===================================================================
Checking out kaffe/config/sparc/linux/sigcontextinfo64.h
RCS:  /home/cvs/kaffe/kaffe/config/sparc/linux/sigcontextinfo64.h,v
VERS: 1.1
***************
--- /dev/null	Sun Aug  4 19:57:58 2002
+++ kaffe/config/sparc/linux/sigcontextinfo64.h	Sun Jun  6 15:09:32 2004
@@ -0,0 +1,32 @@
+/* Copyright (C) 1999 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Jakub Jelinek <jj at ultra.linux.cz>, 1999.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef STACK_BIAS
+#define STACK_BIAS 2047
+#endif
+#define SIGCONTEXT struct sigcontext *
+#define SIGCONTEXT_EXTRA_ARGS
+#define GET_PC(__ctx)	((void *) ((__ctx)->sigc_regs.tpc))
+#define ADVANCE_STACK_FRAME(__next) \
+	((void *) (((unsigned long *) (((unsigned long int) (__next))     \
+					   + STACK_BIAS))+14))
+#define GET_STACK(__ctx)	((void *) ((__ctx)->sigc_regs.u_regs[14]))
+#define GET_FRAME(__ctx)	ADVANCE_STACK_FRAME (GET_STACK (__ctx))
+#define CALL_SIGHANDLER(handler, signo, ctx) \
+  (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))




More information about the kaffe mailing list