From bfe51b1e3243254cb8636401d9cbc7afdc30c2d1 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Fri, 30 May 2003 03:44:05 +0000 Subject: [PATCH] Use gdbarch methods for solib stuff on PowerPC Linux. * config/powerpc/tm-linux.h (IN_SOLIB_CALL_TRAMPOLINE, SKIP_TRAMPOLINE_CODE): #undef these, so the gdbarch methods will show through. * ppc-linux-tdep.c (ppc_linux_init_abi): Register IN_SOLIB_CALL_TRAMPOLINE and SKIP_TRAMPOLINE_CODE methods here, giving the same effect as the #definitions above. --- gdb/ChangeLog | 10 ++++++++++ gdb/config/powerpc/tm-linux.h | 5 +++++ gdb/ppc-linux-tdep.c | 4 ++++ 3 files changed, 19 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e88b4352b9d..ef18af76021 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2003-05-29 Jim Blandy + + Use gdbarch methods for solib stuff on PowerPC Linux. + * config/powerpc/tm-linux.h (IN_SOLIB_CALL_TRAMPOLINE, + SKIP_TRAMPOLINE_CODE): #undef these, so the gdbarch methods will + show through. + * ppc-linux-tdep.c (ppc_linux_init_abi): Register + IN_SOLIB_CALL_TRAMPOLINE and SKIP_TRAMPOLINE_CODE methods here, + giving the same effect as the #definitions above. + 2003-05-29 Adam Fedor * objc-lang.c (CONVERT_FUNCPTR): Remove macro diff --git a/gdb/config/powerpc/tm-linux.h b/gdb/config/powerpc/tm-linux.h index d69dfc1f5bf..eba57c0f411 100644 --- a/gdb/config/powerpc/tm-linux.h +++ b/gdb/config/powerpc/tm-linux.h @@ -26,6 +26,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #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.) */ +#undef IN_SOLIB_CALL_TRAMPOLINE +#undef SKIP_TRAMPOLINE_CODE + /* We can single step on linux */ #undef SOFTWARE_SINGLE_STEP #define SOFTWARE_SINGLE_STEP(p,q) internal_error (__FILE__, __LINE__, "Will never execute!") diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c index 9284751fd0c..44a5b81367f 100644 --- a/gdb/ppc-linux-tdep.c +++ b/gdb/ppc-linux-tdep.c @@ -746,6 +746,10 @@ ppc_linux_init_abi (struct gdbarch_info info, set_solib_svr4_fetch_link_map_offsets (gdbarch, ppc_linux_svr4_fetch_link_map_offsets); } + + /* Shared library handling. */ + set_gdbarch_in_solib_call_trampoline (gdbarch, in_plt_section); + set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); } void -- 2.30.2