binutils-gdb/gdb/python
Nick Bull 162078c893 New python events: inferior call, register/memory changed.
gdb/ChangeLog:

	* NEWS: Mention new Python events.
	* Makefile.in (SUBDIR_PYTHON_OBS): Add py-infevents.o.
	(SUBDIR_PYTHON_SRCS): Add py-infevents.c.
	(py-infevents.o): New rule.
	* doc/observer.texi (inferior_call_pre, inferior_call_post)
	(memory_changed, register_changed): New observers.
	* infcall.c (call_function_by_hand): Notify observer before and
	after inferior call.
	* python/py-event.h (inferior_call_kind): New enum.
	(emit_inferior_call_event): New prototype.
	(emit_register_changed_event): New prototype.
	(emit_memory_changed_event): New prototype.
	* python/py-events.h (events_object): New registries
	inferior_call, memory_changed and register_changed.
	* python/py-evts.c (gdbpy_initialize_py_events): Add the
	inferior_call, memory_changed and register_changed registries.
	* python/py-infevents.c: New.
	* python/py-inferior.c (python_on_inferior_call_pre)
	(python_on_inferior_call_post, python_on_register_change)
	(python_on_memory_change): New functions.
	(gdbpy_initialize_inferior): Attach python handler to new
	observers.
	* python/py-infthread.c(gdbpy_create_ptid_object): New.
	(thpy_get_ptid) Use gdbpy_create_ptid_object.
	* python/python-internal.h:
	(gdbpy_create_ptid_object)
	(gdbpy_initialize_inferior_call_pre_event)
	(gdbpy_initialize_inferior_call_post_event)
	(gdbpy_initialize_register_changed_event)
	(gdbpy_initialize_memory_changed_event): New prototypes.
	* python/python.c (_initialize_python): Initialize new events.
	* valops.c (value_assign): Notify register_changed observer.

gdb/doc/ChangeLog:

	* python.texi (Events In Python): Document new events
	InferiorCallPreEvent, InferiorCallPostEvent, MemoryChangedEvent
	and RegisterChangedEvent.

gdb/testsuite/ChangeLog:

	* gdb.python/py-events.py (inferior_call_handler): New.
	(register_changed_handler, memory_changed_handler): New.
	(test_events.invoke): Register new handlers.
	* gdb.python/py-events.exp: Add tests for inferior call,
	memory_changed and register_changed events.
2014-12-02 11:15:29 -08:00
..
lib/gdb Don't replace '\' with '\\' in before_prompt_hook 2014-10-30 09:42:36 +08:00
py-arch.c
py-auto-load.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-block.c Split struct symtab into two: struct symtab and compunit_symtab. 2014-11-20 07:47:44 -08:00
py-bpevent.c
py-breakpoint.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-cmd.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-continueevent.c
py-event.c
py-event.h New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-events.h New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-evtregistry.c
py-evts.c New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-exitedevent.c
py-finishbreakpoint.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-frame.c SYMTAB_OBJFILE: New macro. 2014-11-18 09:19:11 -08:00
py-framefilter.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-function.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-gdb-readline.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-inferior.c New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-infevents.c New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-infthread.c New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
py-lazy-string.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-linetable.c symtab.h (SYMTAB_LINETABLE): Renamed from LINETABLE. All uses updated. 2014-11-18 09:32:10 -08:00
py-newobjfileevent.c New python event "clear_objfiles". 2014-10-17 11:12:17 -07:00
py-objfile.c Add ability to add attributes to gdb.Objfile and gdb.Progspace objects. 2014-10-30 17:05:17 -07:00
py-param.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-prettyprint.c Remove spurious exceptions.h inclusions 2014-10-08 09:33:22 +01:00
py-progspace.c Add ability to add attributes to gdb.Objfile and gdb.Progspace objects. 2014-10-30 17:05:17 -07:00
py-signalevent.c
py-stopevent.c
py-stopevent.h
py-symbol.c Use SYMBOL_OBJFILE more. 2014-11-18 08:54:06 -08:00
py-symtab.c Split struct symtab into two: struct symtab and compunit_symtab. 2014-11-20 07:47:44 -08:00
py-threadevent.c
py-type.c Delete TYPE_CODE_CLASS, it's just an alias of TYPE_CODE_STRUCT. 2014-11-06 17:19:06 -08:00
py-utils.c
py-value.c Delete TYPE_CODE_CLASS, it's just an alias of TYPE_CODE_STRUCT. 2014-11-06 17:19:06 -08:00
py-varobj.c Iterate over 'struct varobj_item' instead of PyObject 2014-06-12 15:27:19 +08:00
py-xmethods.c
python-config.py
python-internal.h New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
python.c New python events: inferior call, register/memory changed. 2014-12-02 11:15:29 -08:00
python.h