aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@adacore.com>2014-06-11 14:31:20 +0200
committerJoel Brobecker <brobecker@adacore.com>2014-08-01 06:56:25 -0700
commit53e8f97d571973c3bfb04ef3d9a358ea4a0e8e62 (patch)
tree4b3fc57af551e9b62980ab1b1349193985e3084b
parente068c55d5e2f73e85d0d51a39d2a8921ce262d55 (diff)
downloadgdb-53e8f97d571973c3bfb04ef3d9a358ea4a0e8e62.zip
gdb-53e8f97d571973c3bfb04ef3d9a358ea4a0e8e62.tar.gz
gdb-53e8f97d571973c3bfb04ef3d9a358ea4a0e8e62.tar.bz2
Add debug trace in amd64-windows-tdep.c::amd64_windows_frame_decode_insns
This is a trace which would have been useful when trying to understand why the debugger was not decoding the stream of unwind codes I was expecting. This patch adds a trace first informing us that we are following the unwind info to the next unwind record in that chain. gdb/ChangeLog: * amd64-windows-tdep.c (amd64_windows_frame_decode_insns): Add debug trace.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/amd64-windows-tdep.c9
2 files changed, 14 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 939fd20..2d50d35 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,6 +1,11 @@
2014-08-01 Joel Brobecker <brobecker@adacore.com>
* amd64-windows-tdep.c (amd64_windows_frame_decode_insns):
+ Add debug trace.
+
+2014-08-01 Joel Brobecker <brobecker@adacore.com>
+
+ * amd64-windows-tdep.c (amd64_windows_frame_decode_insns):
Remove "+ 8" offset in computation of CHAIN_VMA.
2014-07-31 Doug Evans <dje@google.com>
diff --git a/gdb/amd64-windows-tdep.c b/gdb/amd64-windows-tdep.c
index cb1bac7..f90bd5b 100644
--- a/gdb/amd64-windows-tdep.c
+++ b/gdb/amd64-windows-tdep.c
@@ -837,6 +837,15 @@ amd64_windows_frame_decode_insns (struct frame_info *this_frame,
extract_unsigned_integer (d.rva_EndAddress, 4, byte_order);
unwind_info =
extract_unsigned_integer (d.rva_UnwindData, 4, byte_order);
+
+ if (frame_debug)
+ fprintf_unfiltered
+ (gdb_stdlog,
+ "amd64_windows_frame_decodes_insn (next in chain):"
+ " unwind_data=%s, start_rva=%s, end_rva=%s\n",
+ paddress (gdbarch, unwind_info),
+ paddress (gdbarch, cache->start_rva),
+ paddress (gdbarch, cache->end_rva));
}
/* Allow the user to break this loop. */