diff options
author | Joel Brobecker <brobecker@adacore.com> | 2014-06-11 14:31:20 +0200 |
---|---|---|
committer | Joel Brobecker <brobecker@adacore.com> | 2014-08-01 06:56:25 -0700 |
commit | 53e8f97d571973c3bfb04ef3d9a358ea4a0e8e62 (patch) | |
tree | 4b3fc57af551e9b62980ab1b1349193985e3084b | |
parent | e068c55d5e2f73e85d0d51a39d2a8921ce262d55 (diff) | |
download | gdb-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/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/amd64-windows-tdep.c | 9 |
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. */ |