This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
[M68K/ColdFire patch 4/n] Remove kernel headers
- From: Maxim Kuvyrkov <maxim at codesourcery dot com>
- To: libc-ports at sourceware dot org
- Cc: Andreas Schwab <schwab at linux-m68k dot org>
- Date: Tue, 25 Aug 2009 16:58:32 +0400
- Subject: [M68K/ColdFire patch 4/n] Remove kernel headers
- References: <4A93D885.3060004@codesourcery.com>
This patch removes 2 kernel headers -- sigcontext.h and ucontext.h --
from GLIBC's m68k port. These headers are installed by the kernel, that
has a better idea of how it lays out the signal context.
This elegant patch is a result of about a day of debugging unwinding of
the signal frames.
Any comments?
Thanks,
--
Maxim K.
CodeSourcery
>From ebeebdf8a32ac5b6af243fd277857989367e8f3f Mon Sep 17 00:00:00 2001
From: Maxim Kuvyrkov <maxim@codesourcery.com>
Date: Mon, 24 Aug 2009 12:37:32 +0400
Subject: [PATCH 4/5] Remove kernel headers.
* sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h: Remove, use
kernel version instead.
* sysdeps/unix/sysv/linux/m68k/sys/ucontext.h: Same.
---
sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h | 62 -------------
sysdeps/unix/sysv/linux/m68k/sys/ucontext.h | 113 ------------------------
2 files changed, 0 insertions(+), 175 deletions(-)
delete mode 100644 sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h
delete mode 100644 sysdeps/unix/sysv/linux/m68k/sys/ucontext.h
diff --git a/sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h b/sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h
deleted file mode 100644
index 8ad0c96..0000000
--- a/sysdeps/unix/sysv/linux/m68k/bits/sigcontext.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright (C) 2006 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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. */
-
-#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
-# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
-#endif
-
-#ifndef _BITS_SIGCONTEXT_H
-#define _BITS_SIGCONTEXT_H 1
-
-struct sigcontext {
- unsigned long sc_mask;
- unsigned long sc_usp;
- unsigned long sc_d0;
- unsigned long sc_d1;
-#ifdef __mcoldfire__
- unsigned long sc_d2;
- unsigned long sc_d3;
- unsigned long sc_d4;
- unsigned long sc_d5;
- unsigned long sc_d6;
- unsigned long sc_d7;
-#endif
- unsigned long sc_a0;
- unsigned long sc_a1;
-#ifdef __mcoldfire__
- unsigned long sc_a2;
- unsigned long sc_a3;
- unsigned long sc_a4;
- unsigned long sc_a5;
- unsigned long sc_a6;
-#endif
- unsigned short sc_sr;
- unsigned long sc_pc;
- unsigned short sc_formatvec;
-#ifdef __mcoldfire__
- unsigned long sc_fpregs[8][2];
- unsigned long sc_fpcntl[3];
- unsigned char sc_fpstate[16];
-#else
- unsigned long sc_fpregs[2*3];
- unsigned long sc_fpcntl[3];
- unsigned char sc_fpstate[216];
-#endif
-};
-
-#endif
diff --git a/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h b/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h
deleted file mode 100644
index 776466b..0000000
--- a/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/* Copyright (C) 1997, 1999, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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. */
-
-/* System V/m68k ABI compliant context switching support. */
-
-#ifndef _SYS_UCONTEXT_H
-#define _SYS_UCONTEXT_H 1
-
-#include <features.h>
-#include <signal.h>
-
-/* Type for general register. */
-typedef int greg_t;
-
-/* Number of general registers. */
-#define NGREG 18
-
-/* Container for all general registers. */
-typedef greg_t gregset_t[NGREG];
-
-/* Number of each register is the `gregset_t' array. */
-enum
-{
- R_D0 = 0,
-#define R_D0 R_D0
- R_D1 = 1,
-#define R_D1 R_D1
- R_D2 = 2,
-#define R_D2 R_D2
- R_D3 = 3,
-#define R_D3 R_D3
- R_D4 = 4,
-#define R_D4 R_D4
- R_D5 = 5,
-#define R_D5 R_D5
- R_D6 = 6,
-#define R_D6 R_D6
- R_D7 = 7,
-#define R_D7 R_D7
- R_A0 = 8,
-#define R_A0 R_A0
- R_A1 = 9,
-#define R_A1 R_A1
- R_A2 = 10,
-#define R_A2 R_A2
- R_A3 = 11,
-#define R_A3 R_A3
- R_A4 = 12,
-#define R_A4 R_A4
- R_A5 = 13,
-#define R_A5 R_A5
- R_A6 = 14,
-#define R_A6 R_A6
- R_A7 = 15,
-#define R_A7 R_A7
- R_SP = 15,
-#define R_SP R_SP
- R_PC = 16,
-#define R_PC R_PC
- R_PS = 17
-#define R_PS R_PS
-};
-
-/* Structure to describe FPU registers. */
-typedef struct fpregset
-{
- int f_pcr;
- int f_psr;
- int f_fpiaddr;
-#ifdef __mcoldfire__
- int f_fpregs[8][2];
-#else
- int f_fpregs[8][3];
-#endif
-} fpregset_t;
-
-/* Context to describe whole processor state. */
-typedef struct
-{
- int version;
- gregset_t gregs;
- fpregset_t fpregs;
-} mcontext_t;
-
-#define MCONTEXT_VERSION 2
-
-/* Userlevel context. */
-typedef struct ucontext
-{
- unsigned long uc_flags;
- struct ucontext *uc_link;
- stack_t uc_stack;
- mcontext_t uc_mcontext;
- unsigned long uc_filler[80];
- __sigset_t uc_sigmask;
-} ucontext_t;
-
-#endif /* sys/ucontext.h */
--
1.6.4