* Repost: sparc fix for 2.1.3
@ 2000-01-24 1:07 Jakub Jelinek
0 siblings, 0 replies; only message in thread
From: Jakub Jelinek @ 2000-01-24 1:07 UTC (permalink / raw)
To: libc-hacker
Hi!
Philip's 01/05 arm changes seem to break sparc and I guess a bunch of other
archs as well (because from what I could see, only arm sigcontextinfo.h
includes all the headers which it uses), plus libc 2.1.3 does not want to
compile with 2.3 headers.
This patch should fix both things. I will post a patch for the main trunk
soon which will include other things as well.
2000-01-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/backtrace.c: Include signal.h which
sigcontextinfo.h headers are used to expect.
* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h
(register_dump): Fix a typo in the printout.
Avoid using reg_window, so that asm/ptrace.h is not necessary.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
(ADVANCE_STACK_FRAME): Likewise.
--- libc-2.1/sysdeps/generic/backtrace.c.jj Mon Jan 10 11:46:54 2000
+++ libc-2.1/sysdeps/generic/backtrace.c Thu Jan 13 10:16:11 2000
@@ -19,6 +19,7 @@
Boston, MA 02111-1307, USA. */
#include <execinfo.h>
+#include <signal.h>
#include <frame.h>
#include <sigcontextinfo.h>
--- libc-2.1/sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h.jj Tue Dec 21 11:08:53 1999
+++ libc-2.1/sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h Thu Jan 13 11:14:25 2000
@@ -1,7 +1,7 @@
/* Dump registers.
- Copyright (C) 1999 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jj@ultra.linux.cz>, 1999.
+ Contributed by Jakub Jelinek <jakub@redhat.com>, 1999.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -20,7 +20,6 @@
#include <sys/uio.h>
#include <stdio-common/_itoa.h>
-#include <asm/ptrace.h>
#include <bits/sigcontext.h>
/* We will print the register dump in this format:
@@ -95,7 +94,7 @@ register_dump (int fd, SIGCONTEXT ctx)
struct iovec iov[150];
size_t nr = 0;
int i;
- struct reg_window *r = (struct reg_window *)
+ unsigned int *r = (unsigned int *)
ctx->si_regs.u_regs[14];
#define ADD_STRING(str) \
@@ -115,7 +114,7 @@ register_dump (int fd, SIGCONTEXT ctx)
for (i = 1; i <= 15; i++)
hexvalue (ctx->si_regs.u_regs[i], regs[3+i], 8);
for (i = 0; i <= 15; i++)
- hexvalue (r->locals[i], regs[19+i], 8);
+ hexvalue (r[i], regs[19+i], 8);
hexvalue (ctx->si_mask, regs[35], 8);
/* Generate the output. */
@@ -252,7 +251,7 @@ register_dump (int fd, SIGCONTEXT ctx)
ADD_MEM (fregs[36], 16);
ADD_STRING (" f38: ");
ADD_MEM (fregs[38], 16);
- ADD_STRING (" f40: ");
+ ADD_STRING (" f40: ");
ADD_MEM (fregs[40], 16);
ADD_STRING ("\n f42: ");
ADD_MEM (fregs[42], 16);
--- libc-2.1/sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h.jj Mon Aug 23 19:51:34 1999
+++ libc-2.1/sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h Thu Jan 13 10:29:18 2000
@@ -1,6 +1,6 @@
-/* Copyright (C) 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jj@ultra.linux.cz>, 1999.
+ Contributed by Jakub Jelinek <jakub@redhat.com>, 1999.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -21,6 +21,7 @@
#define SIGCONTEXT_EXTRA_ARGS
#define GET_PC(__ctx) ((void *) ((__ctx)->si_regs.pc))
#define ADVANCE_STACK_FRAME(__next) \
- ((void *)&(((struct reg_window *) (__next))->ins[6]))
+ ((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))
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jakub@redhat.com | http://sunsite.mff.cuni.cz/~jj
Linux version 2.3.40 on a sparc64 machine (1343.49 BogoMips)
___________________________________________________________________
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2000-01-24 1:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-01-24 1:07 Repost: sparc fix for 2.1.3 Jakub Jelinek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).