This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA] Get rid of config/tm-linux.h


Hello,

after the last set of patches, config/tm-linux.h only contains a single
relevant line of code: 

#define SKIP_TRAMPOLINE_CODE(pc)  find_solib_trampoline_target (pc)

We can get rid of this by installing find_solib_trampoline_target via
a call to set_gdbarch_skip_trampoline_code in all affected Linux targets
(all except arm and powerpc, which already have their private versions).

This allows us to get rid of config/tm-linux.h (and various other TM
files on some platforms).  For s390-linux and m32r-linux we now do not
need any TM file at all any more.

Tested on s390-ibm-linux and s390x-ibm-linux, and by building cross-GDBs
to alpha-linux, arm-linux, i386-linux, ia64-linux, m32r-linux, mips-linux,
hppa-linux, powerpc-linux, and sh-linux.

OK?

Bye,
Ulrich


ChangeLog:

	* config/tm-linux.h: Delete file.
	* config/alpha/alpha-linux.mt (DEPRECATED_TM_FILE): Set to tm-alpha.h.
	* config/alpha/tm-alphalinux.h: Delete file.
	* config/arm/linux.mt (DEPRECATED_TM_FILE): Set to tm-arm.h
	* config/arm/tm-linux.h: Delete file.
	* config/i386/tm-linux.h: Do not include "config/tm-linux.h".
	* config/ia64/tm-linux.h: Do not include "config/tm-linux.h".
	* config/m32r/linux.mt (DEPRECATED_TM_FILE): Remove.
	* config/mips/tm-linux.h:  Do not include "config/tm-linux.h".
	* config/pa/linux.mt (DEPRECATED_TM_FILE): Set to tm-hppa.h.
	* config/pa/tm-linux.h: Delete file.
	* config/powerpc/tm-linux.h: Do not include "config/tm-linux.h".
	* config/s390/linux.mt (DEPRECATED_TM_FILE): Remove.
	* config/sh/linux.mt (DEPRECATED_TM_FILE): Set to tm-sh.h.
	* config/sh/tm-linux.h: Delete file.
	* alpha-linux-tdep.c: Include "symtab.h".
	(alpha_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* i386-linux-tdep.c: Include "symtab.h".
	(i386_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* ia64-linux-tdep.c: Include "symtab.h".
	(ia64_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* m32r-linux-tdep.c: Include "symtab.h".
	(m32r_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* mips-linux-tdep.c: Include "symtab.h".
	(mips_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* sh-linux-tdep.c: Include "symtab.h".
	(sh_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* s390-tdep.c (s390_gdbarch_init): Call
	set_gdbarch_skip_trampoline_code.
	* s390-nat.c: Do not include "tm.h".
	* Makefile.in (alpha-linux-tdep.o): Add dependency on $(symtab_h).
	(i386-linux-tdep.o): Likewise.
	(ia64-linux-tdep.o): Likewise.
	(m32r-linux-tdep.o): Likewise.
	(mips-linux-tdep.o): Likewise.
	(sh-linux-tdep.o): Likewise.
	(s390-nat.o): Remove dependency on $(tm_h).


diff -urNp gdb-orig/gdb/alpha-linux-tdep.c gdb-head/gdb/alpha-linux-tdep.c
--- gdb-orig/gdb/alpha-linux-tdep.c	2006-11-28 20:36:59.699224000 +0100
+++ gdb-head/gdb/alpha-linux-tdep.c	2006-11-28 21:46:03.358251824 +0100
@@ -23,6 +23,7 @@
 #include "gdb_assert.h"
 #include "osabi.h"
 #include "solib-svr4.h"
+#include "symtab.h"
 
 #include "alpha-tdep.h"
 
@@ -142,6 +143,8 @@ alpha_linux_init_abi (struct gdbarch_inf
   tdep->jb_pc = 2;
   tdep->jb_elt_size = 8;
 
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+
   /* Enable TLS support.  */
   set_gdbarch_fetch_tls_load_module_address (gdbarch,
                                              svr4_fetch_objfile_link_map);
diff -urNp gdb-orig/gdb/config/alpha/alpha-linux.mt gdb-head/gdb/config/alpha/alpha-linux.mt
--- gdb-orig/gdb/config/alpha/alpha-linux.mt	2006-11-28 20:36:59.703224000 +0100
+++ gdb-head/gdb/config/alpha/alpha-linux.mt	2006-11-28 21:46:03.362251216 +0100
@@ -1,4 +1,4 @@
 # Target: Little-endian Alpha
 TDEPFILES= alpha-tdep.o alpha-mdebug-tdep.o alpha-linux-tdep.o \
 	   solib.o solib-svr4.o solib-legacy.o
-DEPRECATED_TM_FILE= tm-alphalinux.h
+DEPRECATED_TM_FILE= tm-alpha.h
diff -urNp gdb-orig/gdb/config/alpha/tm-alphalinux.h gdb-head/gdb/config/alpha/tm-alphalinux.h
--- gdb-orig/gdb/config/alpha/tm-alphalinux.h	2006-11-28 20:36:59.706223000 +0100
+++ gdb-head/gdb/config/alpha/tm-alphalinux.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,32 +0,0 @@
-/* Definitions to make GDB run on an Alpha box under GNU/Linux.  The
-   definitions here are used when the _target_ system is running
-   GNU/Linux.
-
-   Copyright 1996, 1998, 1999, 2000, 2002, 2003, 2004 Free Software
-   Foundation, Inc.
-
-   This file is part of GDB.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef TM_LINUXALPHA_H
-#define TM_LINUXALPHA_H
-
-#include "alpha/tm-alpha.h"
-
-#include "config/tm-linux.h"
-
-#endif /* TM_LINUXALPHA_H */
diff -urNp gdb-orig/gdb/config/arm/linux.mt gdb-head/gdb/config/arm/linux.mt
--- gdb-orig/gdb/config/arm/linux.mt	2006-11-28 20:36:59.710223000 +0100
+++ gdb-head/gdb/config/arm/linux.mt	2006-11-28 21:46:03.381248328 +0100
@@ -1,5 +1,5 @@
 # Target: ARM based machine running GNU/Linux
-DEPRECATED_TM_FILE= tm-linux.h
+DEPRECATED_TM_FILE= tm-arm.h
 TDEPFILES= arm-tdep.o arm-linux-tdep.o glibc-tdep.o solib.o \
   solib-svr4.o solib-legacy.o symfile-mem.o \
   corelow.o
diff -urNp gdb-orig/gdb/config/arm/tm-linux.h gdb-head/gdb/config/arm/tm-linux.h
--- gdb-orig/gdb/config/arm/tm-linux.h	2006-11-28 20:36:59.713222000 +0100
+++ gdb-head/gdb/config/arm/tm-linux.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,47 +0,0 @@
-/* Target definitions for GNU/Linux on ARM, for GDB.
-   Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005
-   Free Software Foundation, Inc.
-
-   This file is part of GDB.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef TM_ARMLINUX_H
-#define TM_ARMLINUX_H
-
-/* Include the common ARM target definitions.  */
-#include "arm/tm-arm.h"
-
-#include "config/tm-linux.h"
-
-/* We've multi-arched this.  */
-#undef SKIP_TRAMPOLINE_CODE
-
-/* When we call a function in a shared library, and the PLT sends us
-   into the dynamic linker to find the function's real address, we
-   need to skip over the dynamic linker call.  This function decides
-   when to skip, and where to skip to.  See the comments for
-   SKIP_SOLIB_RESOLVER at the top of infrun.c.  */
-#if 0   
-#undef IN_SOLIB_DYNSYM_RESOLVE_CODE
-extern CORE_ADDR arm_in_solib_dynsym_resolve_code (CORE_ADDR pc, char *name);
-#define IN_SOLIB_DYNSYM_RESOLVE_CODE  arm_in_solib_dynsym_resolve_code
-/* ScottB: Current definition is 
-extern CORE_ADDR in_svr4_dynsym_resolve_code (CORE_ADDR pc, char *name);
-#define IN_SOLIB_DYNSYM_RESOLVE_CODE  in_svr4_dynsym_resolve_code */
-#endif
-
-#endif /* TM_ARMLINUX_H */
diff -urNp gdb-orig/gdb/config/i386/tm-linux.h gdb-head/gdb/config/i386/tm-linux.h
--- gdb-orig/gdb/config/i386/tm-linux.h	2006-11-28 20:36:59.716222000 +0100
+++ gdb-head/gdb/config/i386/tm-linux.h	2006-11-28 21:46:03.389247112 +0100
@@ -23,8 +23,6 @@
 #ifndef TM_LINUX_H
 #define TM_LINUX_H
 
-#include "config/tm-linux.h"
-
 /* The following works around a problem with /usr/include/sys/procfs.h  */
 #define sys_quotactl 1
 
diff -urNp gdb-orig/gdb/config/ia64/tm-linux.h gdb-head/gdb/config/ia64/tm-linux.h
--- gdb-orig/gdb/config/ia64/tm-linux.h	2006-11-28 20:36:59.720221000 +0100
+++ gdb-head/gdb/config/ia64/tm-linux.h	2006-11-28 21:46:03.392246656 +0100
@@ -22,8 +22,6 @@
 #ifndef TM_LINUX_H
 #define TM_LINUX_H
 
-#include "config/tm-linux.h"
-
 extern int ia64_linux_in_sigtramp (CORE_ADDR pc, char *func_name);
 #define DEPRECATED_IN_SIGTRAMP(pc,func_name) ia64_linux_in_sigtramp (pc, func_name)
 
diff -urNp gdb-orig/gdb/config/m32r/linux.mt gdb-head/gdb/config/m32r/linux.mt
--- gdb-orig/gdb/config/m32r/linux.mt	2006-11-28 20:36:59.723221000 +0100
+++ gdb-head/gdb/config/m32r/linux.mt	2006-11-28 21:46:03.396246048 +0100
@@ -1,6 +1,5 @@
 # Target: Renesas M32R running GNU/Linux
 TDEPFILES= m32r-tdep.o m32r-linux-tdep.o remote-m32r-sdi.o glibc-tdep.o solib.o solib-svr4.o solib-legacy.o symfile-mem.o
-DEPRECATED_TM_FILE= config/tm-linux.h
 
 SIM_OBS = remote-sim.o
 SIM = ../sim/m32r/libsim.a
diff -urNp gdb-orig/gdb/config/mips/tm-linux.h gdb-head/gdb/config/mips/tm-linux.h
--- gdb-orig/gdb/config/mips/tm-linux.h	2006-11-28 20:36:59.727220000 +0100
+++ gdb-head/gdb/config/mips/tm-linux.h	2006-11-28 21:46:03.400245440 +0100
@@ -22,8 +22,6 @@
 #ifndef TM_MIPSLINUX_H
 #define TM_MIPSLINUX_H
 
-#include "config/tm-linux.h"
-
 #undef IN_SOLIB_DYNSYM_RESOLVE_CODE
 #define IN_SOLIB_DYNSYM_RESOLVE_CODE(PC) mips_linux_in_dynsym_resolve_code (PC)
 int mips_linux_in_dynsym_resolve_code (CORE_ADDR pc);
diff -urNp gdb-orig/gdb/config/pa/linux.mt gdb-head/gdb/config/pa/linux.mt
--- gdb-orig/gdb/config/pa/linux.mt	2006-11-28 20:36:59.731219000 +0100
+++ gdb-head/gdb/config/pa/linux.mt	2006-11-28 21:46:03.403244984 +0100
@@ -1,3 +1,3 @@
 # Target: HP PA-RISC running Linux
 TDEPFILES= hppa-tdep.o hppa-linux-tdep.o glibc-tdep.o solib.o solib-svr4.o symfile-mem.o
-DEPRECATED_TM_FILE=tm-linux.h
+DEPRECATED_TM_FILE=tm-hppa.h
diff -urNp gdb-orig/gdb/config/pa/tm-linux.h gdb-head/gdb/config/pa/tm-linux.h
--- gdb-orig/gdb/config/pa/tm-linux.h	2006-11-28 20:36:59.734219000 +0100
+++ gdb-head/gdb/config/pa/tm-linux.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,29 +0,0 @@
-/* Definitions to target GDB to GNU/Linux on hppa-linux.
-   Copyright 2004 Free Software Foundation, Inc.
-
-   This file is part of GDB.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef TM_LINUX_H
-#define TM_LINUX_H
-
-#include "pa/tm-hppa.h"
-#include "config/tm-linux.h"
-
-#undef SKIP_TRAMPOLINE_CODE
-
-#endif /* #ifndef TM_LINUX_H */
diff -urNp gdb-orig/gdb/config/powerpc/tm-linux.h gdb-head/gdb/config/powerpc/tm-linux.h
--- gdb-orig/gdb/config/powerpc/tm-linux.h	2006-11-28 20:36:59.738218000 +0100
+++ gdb-head/gdb/config/powerpc/tm-linux.h	2006-11-28 21:46:03.410243920 +0100
@@ -22,12 +22,8 @@ Foundation, Inc., 59 Temple Place - Suit
 #define TM_LINUX_H
 
 #include "powerpc/tm-ppc-eabi.h"
-/* Avoid warning from redefinition in tm-sysv4.h (included from tm-linux.h) */
-#undef SKIP_TRAMPOLINE_CODE
-#include "config/tm-linux.h"
 
-/* We've multi-arched these.  (Note that this completely undoes the
-   effect of config/tm-linux.h #including config/tm-sysv4.h.)  */
+/* We've multi-arched these.  */
 #undef SKIP_TRAMPOLINE_CODE
 
 /* Make sure nexti gets the help it needs for debugging assembly code
diff -urNp gdb-orig/gdb/config/s390/s390.mt gdb-head/gdb/config/s390/s390.mt
--- gdb-orig/gdb/config/s390/s390.mt	2006-11-28 20:36:59.742218000 +0100
+++ gdb-head/gdb/config/s390/s390.mt	2006-11-28 21:46:03.414243312 +0100
@@ -1,5 +1,2 @@
 # Target: S390 running Linux
-DEPRECATED_TM_FILE= config/tm-linux.h
-TDEPFILES=s390-tdep.o solib.o
-# Post 5.0 tdep-files
-TDEPFILES+=solib-svr4.o solib-legacy.o
+TDEPFILES=s390-tdep.o solib.o solib-svr4.o solib-legacy.o
diff -urNp gdb-orig/gdb/config/sh/linux.mt gdb-head/gdb/config/sh/linux.mt
--- gdb-orig/gdb/config/sh/linux.mt	2006-11-28 20:36:59.745217000 +0100
+++ gdb-head/gdb/config/sh/linux.mt	2006-11-28 21:46:03.418242704 +0100
@@ -2,7 +2,7 @@
 TDEPFILES= sh-tdep.o sh64-tdep.o sh-linux-tdep.o \
 	monitor.o sh3-rom.o remote-e7000.o ser-e7kpc.o dsrec.o \
 	solib.o solib-svr4.o symfile-mem.o
-DEPRECATED_TM_FILE= tm-linux.h
+DEPRECATED_TM_FILE= tm-sh.h
 
 SIM_OBS = remote-sim.o
 SIM = ../sim/sh/libsim.a
diff -urNp gdb-orig/gdb/config/sh/tm-linux.h gdb-head/gdb/config/sh/tm-linux.h
--- gdb-orig/gdb/config/sh/tm-linux.h	2006-11-28 20:36:59.748217000 +0100
+++ gdb-head/gdb/config/sh/tm-linux.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
-/* Target-specific definitions for GNU/Linux running on a Renesas
-   Super-H.
-
-   Copyright 2000, 2002 Free Software Foundation, Inc.
-
-   This file is part of GDB.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-/* Pull in GNU/Linux generic defs.  */
-#include "config/tm-linux.h"
-
-/* Pull in sh-target defs */
-#include "sh/tm-sh.h"
-
diff -urNp gdb-orig/gdb/config/tm-linux.h gdb-head/gdb/config/tm-linux.h
--- gdb-orig/gdb/config/tm-linux.h	2006-11-28 20:36:59.751216000 +0100
+++ gdb-head/gdb/config/tm-linux.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
-/* Native support for GNU/Linux, for GDB, the GNU debugger.
-   Copyright 1999, 2000
-   Free Software Foundation, Inc.
-
-   This file is part of GDB.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-/* We need this file for the SOLIB_TRAMPOLINE stuff. */
-
-/* If PC is in a shared library trampoline code, return the PC
-   where the function itself actually starts.  If not, return 0.  */
-
-#define SKIP_TRAMPOLINE_CODE(pc)  find_solib_trampoline_target (pc)
-
diff -urNp gdb-orig/gdb/i386-linux-tdep.c gdb-head/gdb/i386-linux-tdep.c
--- gdb-orig/gdb/i386-linux-tdep.c	2006-11-28 20:36:59.755216000 +0100
+++ gdb-head/gdb/i386-linux-tdep.c	2006-11-28 21:46:03.429241032 +0100
@@ -35,6 +35,7 @@
 #include "i386-linux-tdep.h"
 #include "glibc-tdep.h"
 #include "solib-svr4.h"
+#include "symtab.h"
 
 /* Return the name of register REG.  */
 
@@ -431,6 +432,7 @@ i386_linux_init_abi (struct gdbarch_info
   tdep->sc_num_regs = ARRAY_SIZE (i386_linux_sc_reg_offset);
 
   /* GNU/Linux uses SVR4-style shared libraries.  */
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 
diff -urNp gdb-orig/gdb/ia64-linux-tdep.c gdb-head/gdb/ia64-linux-tdep.c
--- gdb-orig/gdb/ia64-linux-tdep.c	2006-11-28 20:36:59.759215000 +0100
+++ gdb-head/gdb/ia64-linux-tdep.c	2006-11-28 21:46:03.433240424 +0100
@@ -26,6 +26,7 @@
 #include "regcache.h"
 #include "osabi.h"
 #include "solib-svr4.h"
+#include "symtab.h"
 
 /* The sigtramp code is in a non-readable (executable-only) region
    of memory called the ``gate page''.  The addresses in question
@@ -126,6 +127,8 @@ ia64_linux_init_abi (struct gdbarch_info
 
   set_gdbarch_write_pc (gdbarch, ia64_linux_write_pc);
 
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+
   /* Enable TLS support.  */
   set_gdbarch_fetch_tls_load_module_address (gdbarch,
                                              svr4_fetch_objfile_link_map);
diff -urNp gdb-orig/gdb/m32r-linux-tdep.c gdb-head/gdb/m32r-linux-tdep.c
--- gdb-orig/gdb/m32r-linux-tdep.c	2006-11-28 20:36:59.764214000 +0100
+++ gdb-head/gdb/m32r-linux-tdep.c	2006-11-28 21:46:03.437239816 +0100
@@ -33,6 +33,7 @@
 
 #include "glibc-tdep.h"
 #include "solib-svr4.h"
+#include "symtab.h"
 
 #include "trad-frame.h"
 #include "frame-unwind.h"
@@ -413,6 +414,7 @@ m32r_linux_init_abi (struct gdbarch_info
   frame_unwind_append_sniffer (gdbarch, m32r_linux_sigtramp_frame_sniffer);
 
   /* GNU/Linux uses SVR4-style shared libraries.  */
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 
diff -urNp gdb-orig/gdb/Makefile.in gdb-head/gdb/Makefile.in
--- gdb-orig/gdb/Makefile.in	2006-11-28 20:36:59.775213000 +0100
+++ gdb-head/gdb/Makefile.in	2006-11-28 21:46:14.607272952 +0100
@@ -1718,7 +1718,7 @@ alphafbsd-tdep.o: alphafbsd-tdep.c $(def
 	$(alpha_tdep_h) $(solib_svr4_h)
 alpha-linux-nat.o: alpha-linux-nat.c $(defs_h) $(target_h) $(linux_nat_h)
 alpha-linux-tdep.o: alpha-linux-tdep.c $(defs_h) $(frame_h) $(gdb_assert_h) \
-	$(osabi_h) $(solib_svr4_h) $(alpha_tdep_h)
+	$(osabi_h) $(solib_svr4_h) $(symtab_h) $(alpha_tdep_h)
 alpha-mdebug-tdep.o: alpha-mdebug-tdep.c $(defs_h) $(frame_h) \
 	$(frame_unwind_h) $(frame_base_h) $(symtab_h) $(gdbcore_h) \
 	$(block_h) $(gdb_assert_h) $(alpha_tdep_h) $(mdebugread_h)
@@ -2118,7 +2118,7 @@ i386-linux-nat.o: i386-linux-nat.c $(def
 i386-linux-tdep.o: i386-linux-tdep.c $(defs_h) $(gdbcore_h) $(frame_h) \
 	$(value_h) $(regcache_h) $(inferior_h) $(osabi_h) $(reggroups_h) \
 	$(dwarf2_frame_h) $(gdb_string_h) $(i386_tdep_h) \
-	$(i386_linux_tdep_h) $(glibc_tdep_h) $(solib_svr4_h)
+	$(i386_linux_tdep_h) $(glibc_tdep_h) $(solib_svr4_h) $(symtab_h)
 i386-nat.o: i386-nat.c $(defs_h) $(breakpoint_h) $(command_h) $(gdbcmd_h)
 i386nbsd-nat.o: i386nbsd-nat.c $(defs_h) $(gdbcore_h) $(regcache_h) \
 	$(target_h) $(i386_tdep_h) $(i386bsd_nat_h) $(bsd_kvm_h)
@@ -2159,7 +2159,8 @@ ia64-linux-nat.o: ia64-linux-nat.c $(def
 	$(target_h) $(gdbcore_h) $(regcache_h) $(ia64_tdep_h) $(gdb_wait_h) \
 	$(gregset_h) $(linux_nat_h)
 ia64-linux-tdep.o: ia64-linux-tdep.c $(defs_h) $(ia64_tdep_h) \
-	$(arch_utils_h) $(gdbcore_h) $(regcache_h) $(osabi_h) $(solib_svr4_h)
+	$(arch_utils_h) $(gdbcore_h) $(regcache_h) $(osabi_h) $(solib_svr4_h) \
+	$(symtab_h)
 ia64-tdep.o: ia64-tdep.c $(defs_h) $(inferior_h) $(gdbcore_h) \
 	$(arch_utils_h) $(floatformat_h) $(regcache_h) $(reggroups_h) \
 	$(frame_h) $(frame_base_h) $(frame_unwind_h) $(doublest_h) \
@@ -2269,7 +2270,7 @@ m32r-linux-nat.o: m32r-linux-nat.c $(def
 m32r-linux-tdep.o: m32r-linux-tdep.c $(defs_h) $(gdbcore_h) $(frame_h) \
 	$(value_h) $(regcache_h) $(inferior_h) $(osabi_h) $(reggroups_h) \
 	$(regset_h) $(gdb_string_h) $(glibc_tdep_h) $(solib_svr4_h) \
-	$(trad_frame_h) $(frame_unwind_h) $(m32r_tdep_h)
+	$(symtab_h) $(trad_frame_h) $(frame_unwind_h) $(m32r_tdep_h)
 m32r-rom.o: m32r-rom.c $(defs_h) $(gdbcore_h) $(target_h) $(exceptions_h) \
 	$(monitor_h) $(serial_h) $(symtab_h) $(command_h) $(gdbcmd_h) \
 	$(symfile_h) $(gdb_string_h) $(objfiles_h) $(inferior_h) \
@@ -2355,7 +2356,8 @@ mips-linux-nat.o: mips-linux-nat.c $(def
 mips-linux-tdep.o: mips-linux-tdep.c $(defs_h) $(gdbcore_h) $(target_h) \
 	$(solib_svr4_h) $(osabi_h) $(mips_tdep_h) $(gdb_string_h) \
 	$(gdb_assert_h) $(frame_h) $(regcache_h) $(trad_frame_h) \
-	$(tramp_frame_h) $(floatformat_h) $(solib_h) $(mips_linux_tdep_h)
+	$(tramp_frame_h) $(floatformat_h) $(solib_h) $(symtab_h) \
+	$(mips_linux_tdep_h)
 mips-mdebug-tdep.o: mips-mdebug-tdep.c $(defs_h) $(frame_h) $(mips_tdep_h) \
 	$(trad_frame_h) $(block_h) $(symtab_h) $(objfiles_h) $(elf_mips_h) \
 	$(elf_bfd_h) $(gdb_assert_h) $(frame_unwind_h) $(frame_base_h) \
@@ -2558,7 +2560,7 @@ rs6000-tdep.o: rs6000-tdep.c $(defs_h) $
 	$(ppc_tdep_h) $(gdb_assert_h) $(dis_asm_h) $(trad_frame_h) \
 	$(frame_unwind_h) $(frame_base_h) $(rs6000_tdep_h)
 rs6000-aix-tdep.o: rs6000-aix-tdep.c $(defs_h) $(osabi_h) $(rs6000_tdep_h)
-s390-nat.o: s390-nat.c $(defs_h) $(tm_h) $(regcache_h) $(inferior_h) \
+s390-nat.o: s390-nat.c $(defs_h) $(regcache_h) $(inferior_h) \
 	$(s390_tdep_h) $(target_h) $(linux_nat_h)
 s390-tdep.o: s390-tdep.c $(defs_h) $(arch_utils_h) $(frame_h) $(inferior_h) \
 	$(symtab_h) $(target_h) $(gdbcore_h) $(gdbcmd_h) $(objfiles_h) \
@@ -2604,7 +2606,8 @@ shnbsd-tdep.o: shnbsd-tdep.c $(defs_h) $
 	$(osabi_h) $(solib_svr4_h) $(nbsd_tdep_h) $(sh_tdep_h) \
 	$(shnbsd_tdep_h)
 sh-stub.o: sh-stub.c
-sh-linux-tdep.o: sh-linux-tdep.c $(defs_h) $(osabi_h) $(solib_svr4_h)
+sh-linux-tdep.o: sh-linux-tdep.c $(defs_h) $(osabi_h) $(solib_svr4_h) \
+	$(symtab_h)
 sh-tdep.o: sh-tdep.c $(defs_h) $(frame_h) $(frame_base_h) $(frame_unwind_h) \
 	$(dwarf2_frame_h) $(symtab_h) $(gdbtypes_h) $(gdbcmd_h) $(gdbcore_h) \
 	$(value_h) $(dis_asm_h) $(inferior_h) $(gdb_string_h) \
diff -urNp gdb-orig/gdb/mips-linux-tdep.c gdb-head/gdb/mips-linux-tdep.c
--- gdb-orig/gdb/mips-linux-tdep.c	2006-11-28 20:36:59.818206000 +0100
+++ gdb-head/gdb/mips-linux-tdep.c	2006-11-28 21:46:03.493231304 +0100
@@ -34,6 +34,7 @@
 #include "tramp-frame.h"
 #include "floatformat.h"
 #include "solib.h"
+#include "symtab.h"
 #include "mips-linux-tdep.h"
 
 /* Figure out where the longjmp will land.
@@ -1179,6 +1180,7 @@ mips_linux_init_abi (struct gdbarch_info
 	break;
     }
 
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
   set_gdbarch_skip_solib_resolver (gdbarch, mips_linux_skip_resolver);
 
   set_gdbarch_software_single_step (gdbarch, mips_software_single_step);
diff -urNp gdb-orig/gdb/s390-nat.c gdb-head/gdb/s390-nat.c
--- gdb-orig/gdb/s390-nat.c	2006-03-29 20:27:00.000000000 +0200
+++ gdb-head/gdb/s390-nat.c	2006-11-28 21:46:21.995214192 +0100
@@ -23,7 +23,6 @@
    Boston, MA 02110-1301, USA.  */
 
 #include "defs.h"
-#include "tm.h"
 #include "regcache.h"
 #include "inferior.h"
 #include "target.h"
diff -urNp gdb-orig/gdb/s390-tdep.c gdb-head/gdb/s390-tdep.c
--- gdb-orig/gdb/s390-tdep.c	2006-11-28 20:36:59.864199000 +0100
+++ gdb-head/gdb/s390-tdep.c	2006-11-28 21:46:03.501230088 +0100
@@ -2478,6 +2478,8 @@ s390_gdbarch_init (struct gdbarch_info i
 
   set_gdbarch_print_insn (gdbarch, print_insn_s390);
 
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+
   /* Enable TLS support.  */
   set_gdbarch_fetch_tls_load_module_address (gdbarch,
                                              svr4_fetch_objfile_link_map);
diff -urNp gdb-orig/gdb/sh-linux-tdep.c gdb-head/gdb/sh-linux-tdep.c
--- gdb-orig/gdb/sh-linux-tdep.c	2006-11-28 20:36:59.904193000 +0100
+++ gdb-head/gdb/sh-linux-tdep.c	2006-11-28 21:46:03.543223704 +0100
@@ -23,11 +23,13 @@
 #include "osabi.h"
 
 #include "solib-svr4.h"
+#include "symtab.h"
 
 static void
 sh_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 {
   /* GNU/Linux uses SVR4-style shared libraries.  */
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  Ulrich.Weigand@de.ibm.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]