[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