aboutsummaryrefslogtreecommitdiff
path: root/gdb/amd64-linux-tdep.c
diff options
context:
space:
mode:
authorMichael Snyder <msnyder@vmware.com>2009-08-17 18:23:45 +0000
committerMichael Snyder <msnyder@vmware.com>2009-08-17 18:23:45 +0000
commit872761f485e2b7d1a0c76fa7aab96b4c13ae941b (patch)
treed9471e9830d3632459efb2a6e42bb7d45bb2de77 /gdb/amd64-linux-tdep.c
parent987499b2425ad953bf823e03b75e45381a4e0b4a (diff)
downloadgdb-872761f485e2b7d1a0c76fa7aab96b4c13ae941b.zip
gdb-872761f485e2b7d1a0c76fa7aab96b4c13ae941b.tar.gz
gdb-872761f485e2b7d1a0c76fa7aab96b4c13ae941b.tar.bz2
2009-08-17 Michael Snyder <msnyder@vmware.com>
* amd64-tdep.c: Add a frame unwinder for function epilogues. (amd64_in_function_epilogue_p): New function. (amd64_epilogue_frame_sniffer): New function. (amd64_epilogue_frame_cache): New function. (amd64_epilogue_frame_this_id): New function. (amd64_epilogue_frame_unwind): New struct frame_unwind. (amd64_init_abi): Hook the new unwinder. * amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use SVR4 method for skip_trampoline_code.
Diffstat (limited to 'gdb/amd64-linux-tdep.c')
-rw-r--r--gdb/amd64-linux-tdep.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
index e7f966b..dcfdb38 100644
--- a/gdb/amd64-linux-tdep.c
+++ b/gdb/amd64-linux-tdep.c
@@ -1415,6 +1415,9 @@ amd64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
set_gdbarch_fetch_tls_load_module_address (gdbarch,
svr4_fetch_objfile_link_map);
+ /* GNU/Linux uses SVR4-style shared libraries. */
+ set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+
/* Displaced stepping. */
set_gdbarch_displaced_step_copy_insn (gdbarch,
amd64_displaced_step_copy_insn);