aboutsummaryrefslogtreecommitdiff
path: root/gdb/fbsd-tdep.h
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2020-07-20 09:09:58 -0700
committerJohn Baldwin <jhb@FreeBSD.org>2020-07-20 09:10:18 -0700
commited810cc7d3252bd8bfdb4303ee6b44293fe6214e (patch)
tree93cc390389149769497f84234c5ef0be3b4f092f /gdb/fbsd-tdep.h
parentae5369e773c341ab55a130fffb4678bb3595d692 (diff)
downloadgdb-ed810cc7d3252bd8bfdb4303ee6b44293fe6214e.zip
gdb-ed810cc7d3252bd8bfdb4303ee6b44293fe6214e.tar.gz
gdb-ed810cc7d3252bd8bfdb4303ee6b44293fe6214e.tar.bz2
Implement the skip_solib_resolver gdbarch hook for FreeBSD architectures.
The ELF runtime linker on all FreeBSD architectures uses the "_rtld_bind" entry point for unresolved PTL entries. FreeBSD/mips has an additional entry point called "_mips_rtld_bind". gdb/ChangeLog: * fbsd-tdep.c (fbsd_skip_solib_resolver): New function. (fbsd_init_abi): Install gdbarch "skip_solib_resolver" method. * fbsd-tdep.h (fbsd_skip_solib_resolver): New prototype. * mips-fbsd-tdep.c (mips_fbsd_skip_solib_resolver): New function. (mips_fbsd_init_abi): Install gdbarch "skip_solib_resolver" method.
Diffstat (limited to 'gdb/fbsd-tdep.h')
-rw-r--r--gdb/fbsd-tdep.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/fbsd-tdep.h b/gdb/fbsd-tdep.h
index 5dd8203..e8e49dc 100644
--- a/gdb/fbsd-tdep.h
+++ b/gdb/fbsd-tdep.h
@@ -71,4 +71,9 @@ extern CORE_ADDR fbsd_get_thread_local_address (struct gdbarch *gdbarch,
CORE_ADDR lm_addr,
CORE_ADDR offset);
+/* Implement the "skip_solib_resolver" gdbarch method. */
+
+extern CORE_ADDR fbsd_skip_solib_resolver (struct gdbarch *gdbarch,
+ CORE_ADDR pc);
+
#endif /* fbsd-tdep.h */