binutils-gdb/gdb/python
Tom Tromey 8743a9cdd2 Add more methods to gdb.Progspace
There are a number of global functions in the gdb Python module which
really should be methods on Progspace.  This patch adds new methods to
Progspace and then redefines these globals in terms of these new
methods.

This version has been rebased on the related changes that Simon
recently put in.

Built and regtested on x86-64 Fedora 28.

gdb/ChangeLog
2018-09-16  Tom Tromey  <tom@tromey.com>

	* python/lib/gdb/__init__.py (current_progspace, objfiles)
	(solib_name, block_for_pc, find_pc_line): New functions.
	(execute_unwinders): Update.
	* python/py-block.c (gdbpy_block_for_pc): Remove.
	* python/py-inferior.c (infpy_get_progspace): New function.
	(inferior_object_getset) <progspace>: Add.
	* python/py-progspace.c (pspy_objfiles): Rewrite.
	(pspy_solib_name, pspy_block_for_pc)
	(pspy_find_pc_line, pspy_is_valid): New functions.
	(progspace_object_methods): Add entries for solib_name,
	block_for_pc, find_pc_line, is_valid.
	* python/python-internal.h (gdbpy_block_for_pc)
	(build_objfiles_list): Don't declare.
	* python/python.c: Don't include solib.h.
	(gdbpy_solib_name, gdbpy_find_pc_line)
	(gdbpy_get_current_progspace, build_objfiles_list)
	(gdbpy_objfiles): Remove.
	(GdbMethods) <current_progspace, objfiles, block_for_pc,
	solib_name, find_pc_line>: Remove entries.

gdb/doc/ChangeLog
2018-09-16  Tom Tromey  <tom@tromey.com>

	* python.texi (Basic Python): Update docs for find_pc_line,
	solib_name.
	(Progspaces In Python): Update docs for current_progspace.
	Document block_for_pc, find_pc_line, is_valid, nsolib_name.
	Move method documentation before example.
2018-09-16 06:52:37 -06:00
..
lib/gdb Add more methods to gdb.Progspace 2018-09-16 06:52:37 -06:00
py-all-events.def Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-arch.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-auto-load.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-block.c Add more methods to gdb.Progspace 2018-09-16 06:52:37 -06:00
py-bpevent.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-breakpoint.c Simple unused variable removals 2018-07-22 13:20:01 -06:00
py-cmd.c Change Python code to use new_reference 2018-04-30 11:33:12 -06:00
py-continueevent.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-event-types.def Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-event.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-event.h Fix 8.2 regression in gdb.python/py-evthreads.exp w/ gdbserver (PR gdb/23379) 2018-08-24 22:13:30 +01:00
py-events.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-evtregistry.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-evts.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-exitedevent.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-finishbreakpoint.c Use thread_info and inferior pointers more throughout 2018-06-21 17:09:31 +01:00
py-frame.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-framefilter.c MI: Fix printing of frame architecture with Python frame filters enabled 2018-08-27 17:12:41 -04:00
py-function.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-gdb-readline.c Remove "repeat" argument from command_line_input 2018-08-17 16:39:06 -06:00
py-inferior.c Make infpy_thread_from_thread_handle static 2018-09-13 16:23:52 -06:00
py-infevents.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-infthread.c Remove ptid_get_tid 2018-07-03 11:36:44 -06:00
py-instruction.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-instruction.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-lazy-string.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-linetable.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-newobjfileevent.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-objfile.c python: Provide textual representation for Inferior and Objfile 2018-09-13 11:54:38 -04:00
py-param.c Fix a memory leak in py-param.c 2018-06-20 21:10:10 -06:00
py-prettyprint.c python: Make two functions return gdbpy_ref<> 2018-09-09 08:13:17 +01:00
py-progspace.c Add more methods to gdb.Progspace 2018-09-16 06:52:37 -06:00
py-record-btrace.c Use thread_info and inferior pointers more throughout 2018-06-21 17:09:31 +01:00
py-record-btrace.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-record-full.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-record-full.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-record.c Use thread_info and inferior pointers more throughout 2018-06-21 17:09:31 +01:00
py-record.h Use thread_info and inferior pointers more throughout 2018-06-21 17:09:31 +01:00
py-ref.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-signalevent.c gdb/python: Use copy-initialization more when possible 2018-08-24 22:57:16 +01:00
py-stopevent.c Fix 8.2 regression in gdb.python/py-evthreads.exp w/ gdbserver (PR gdb/23379) 2018-08-24 22:13:30 +01:00
py-stopevent.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-symbol.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-symtab.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-threadevent.c Initialize variable in py_get_event_thread 2018-08-25 11:52:24 -04:00
py-type.c Remove a static buffer from cp-name-parser.y 2018-06-01 10:46:47 -06:00
py-unwind.c Simple unused variable removals 2018-07-22 13:20:01 -06:00
py-utils.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-value.c Use unique_xmalloc_ptr for read_string 2018-06-18 12:51:02 -06:00
py-varobj.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
py-xmethods.c Remove xmethod_worker::clone 2018-01-07 09:25:33 -05:00
python-config.py configure uses incorrect link order when testing libpython 2018-05-04 10:08:09 -04:00
python-internal.h Add more methods to gdb.Progspace 2018-09-16 06:52:37 -06:00
python.c Add more methods to gdb.Progspace 2018-09-16 06:52:37 -06:00
python.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00