This is the mail archive of the
gdb-cvs@sourceware.cygnus.com
mailing list for the GDB project.
src/gdb ChangeLog i386-tdep.c config/i386/tm-l ...
- To: gdb-cvs at sourceware dot cygnus dot com
- Subject: src/gdb ChangeLog i386-tdep.c config/i386/tm-l ...
- From: kettenis at sourceware dot cygnus dot com
- Date: 4 Mar 2000 23:37:34 -0000
CVSROOT: /cvs/src
Module name: src
Changes by: kettenis@sourceware.cygnus.com 00/03/04 15:37:33
Modified files:
gdb : ChangeLog i386-tdep.c
gdb/config/i386: tm-linux.h
Log message:
2000-03-04 Mark Kettenis <kettenis@gnu.org>
Fix support for Linux/i386 signal trampolines. The old approach
didn't work for Linux 2.2 and beyond, and didn't work with recent
versions of the GNU C library.
* i386-tdep.c (LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): New defines.
(linux_rt_sigtramp_code): New variable.
(LINUX_RT_SIGTRAMP_LEN): New define.
(i386_linux_rt_sigtramp_start): New function. Detect start of
signal trampolines for RT signals.
(i386_linux_sigtramp): Removed.
(i386_linux_in_sigtramp): New function.
(i386_linux_sigcontext_addr): New function. Recognize the names
of the signal tranmpolines used by recent versions of the GNU C
library, and add support for RT signals.
(LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET): New
defines. Moved here from config/i386/tm-linux.h.
(i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
Reimplement in terms of i386_linux_sigcontext_addr.
* config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Removed.
(LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):
Moved to i386-tdep.c.
(IN_SIGTRAMP): Redefine to call i386_linux_in_sigtramp.
Patches:
http://sourceware.cygnus.com/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.109&r2=1.110
http://sourceware.cygnus.com/cgi-bin/cvsweb.cgi/src/gdb/i386-tdep.c.diff?cvsroot=src&r1=1.4&r2=1.5
http://sourceware.cygnus.com/cgi-bin/cvsweb.cgi/src/gdb/config/i386/tm-linux.h.diff?cvsroot=src&r1=1.1.1.8&r2=1.2