gdb/python: Introduce gdb.lookup_static_symbols
authorAndrew Burgess <andrew.burgess@embecosm.com>
Tue, 15 Oct 2019 15:18:26 +0000 (16:18 +0100)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Sun, 10 Nov 2019 21:35:32 +0000 (21:35 +0000)
commit086baaf1346f07acfb6708e8c6cb79274241488b
tree0dff00a4c5da670a23ed348dd13c5475bd342289
parent09ff83af3c8558594bd31bfaf4ed7daadf4f707d
gdb/python: Introduce gdb.lookup_static_symbols

If gdb.lookup_static_symbol is going to return a single symbol then it
makes sense (I think) for it to return a context sensitive choice of
symbol, that is the global static symbol that would be visible to the
program at that point.

However, if the user of the python API wants to instead get a
consistent set of global static symbols, no matter where they stop,
then they have to instead consider all global static symbols with a
given name - there could be many.  That is what this new API function
offers, it returns a list (possibly empty) of all global static
symbols matching a given name (and optionally a given symbol domain).

gdb/ChangeLog:

* python/py-symbol.c (gdbpy_lookup_static_symbols): New
function.
* python/python-internal.h (gdbpy_lookup_static_symbols):
Declare new function.
* python/python.c (python_GdbMethods): Add
gdb.lookup_static_symbols method.
* NEWS: Mention gdb.lookup_static_symbols.

gdb/testsuite/ChangeLog:

* gdb.python/py-symbol.exp: Add test for
gdb.lookup_static_symbols.

gdb/doc/ChangeLog:

* python.texi (Symbols In Python): Add documentation for
gdb.lookup_static_symbols.

Change-Id: I1153b0ae5bcbc43b3dcf139043c7a48bf791e1a3
gdb/ChangeLog
gdb/NEWS
gdb/doc/ChangeLog
gdb/doc/python.texi
gdb/python/py-symbol.c
gdb/python/python-internal.h
gdb/python/python.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-symbol.exp