gdb/python: print name of unwinder that claimed frame in debug message
authorSimon Marchi <simon.marchi@polymtl.ca>
Tue, 22 Jun 2021 18:16:01 +0000 (14:16 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Tue, 22 Jun 2021 18:47:10 +0000 (14:47 -0400)
commit4e317a765bbe1c47fb9d461b7effa40f34220c85
tree2b3b5d3b0e1461e238904472b72a6e8e6b99fc93
parent80d1206d7fea6eb756183e2825abdfd0f00cd976
gdb/python: print name of unwinder that claimed frame in debug message

If we have multiple registered unwinders, this will helps identify which
unwinder was chosen and make it easier to track down potential problems.
Unwinders have a mandatory name argument, which we can use in the
message.

First, make gdb._execute_unwinders return a tuple containing the name,
in addition to the UnwindInfo.  Then, make pyuw_sniffer include the name
in the debug message.

I moved the debug message earlier.  I think it's good to print it as
early as possible, so that we see it in case an assert is hit in the
loop below, for example.

gdb/ChangeLog:

* python/lib/gdb/__init__.py (_execute_unwinders): Return tuple
with name of chosen unwinder.
* python/py-unwind.c (pyuw_sniffer): Print name of chosen
unwinder in debug message.

Change-Id: Id603545b44a97df2a39dd1872fe1f38ad5059f03
gdb/ChangeLog
gdb/python/lib/gdb/__init__.py
gdb/python/py-unwind.c