aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2023-09-29 14:24:36 -0400
committerSimon Marchi <simon.marchi@efficios.com>2023-10-10 10:44:35 -0400
commit97153a2bbfc59d33c1031526e63b06725862ba6b (patch)
treed83a7a8b917f7ba7f61afb300e129b70d38fbb9c /gdb
parent27b1f19f8f5cc46faba4bb2142547df074a82a29 (diff)
downloadgdb-97153a2bbfc59d33c1031526e63b06725862ba6b.zip
gdb-97153a2bbfc59d33c1031526e63b06725862ba6b.tar.gz
gdb-97153a2bbfc59d33c1031526e63b06725862ba6b.tar.bz2
gdb: add inferior parameter to architecture_changed observable
This is to make it explicit which inferior's architecture just changed, and that the callbacks should not assume it is the current inferior. Update the only caller, pyuw_on_new_gdbarch, to add the parameter, although it doesn't use it currently. Change-Id: Ieb7f21377e4252cc6e7b1ce2cc812cd1a1840e0e Reviewed-By: John Baldwin <jhb@FreeBSD.org> Approved-By: Andrew Burgess <aburgess@redhat.com>
Diffstat (limited to 'gdb')
-rw-r--r--gdb/arch-utils.c3
-rw-r--r--gdb/observable.h5
-rw-r--r--gdb/python/py-unwind.c2
3 files changed, 6 insertions, 4 deletions
diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c
index 5331bd8..b2b265a 100644
--- a/gdb/arch-utils.c
+++ b/gdb/arch-utils.c
@@ -1489,7 +1489,8 @@ set_target_gdbarch (struct gdbarch *new_gdbarch)
gdb_assert (new_gdbarch != NULL);
gdb_assert (new_gdbarch->initialized_p);
current_inferior ()->set_arch (new_gdbarch);
- gdb::observers::architecture_changed.notify (new_gdbarch);
+ gdb::observers::architecture_changed.notify (current_inferior (),
+ new_gdbarch);
registers_changed ();
}
diff --git a/gdb/observable.h b/gdb/observable.h
index 5a21440..acb05e9 100644
--- a/gdb/observable.h
+++ b/gdb/observable.h
@@ -153,9 +153,10 @@ extern observable<struct breakpoint */* b */> breakpoint_deleted;
is the modified breakpoint. */
extern observable<struct breakpoint */* b */> breakpoint_modified;
-/* The current architecture has changed. The argument NEWARCH is a
+/* INF's architecture has changed. The argument NEWARCH is a
pointer to the new architecture. */
-extern observable<struct gdbarch */* newarch */> architecture_changed;
+extern observable<inferior */* inf */, struct gdbarch */* newarch */>
+ architecture_changed;
/* The thread's ptid has changed. The OLD_PTID parameter specifies
the old value, and NEW_PTID specifies the new value. */
diff --git a/gdb/python/py-unwind.c b/gdb/python/py-unwind.c
index 1856e41..f8b142d 100644
--- a/gdb/python/py-unwind.c
+++ b/gdb/python/py-unwind.c
@@ -945,7 +945,7 @@ static const registry<gdbarch>::key<pyuw_gdbarch_data_type> pyuw_gdbarch_data;
intermediary. */
static void
-pyuw_on_new_gdbarch (struct gdbarch *newarch)
+pyuw_on_new_gdbarch (inferior *inf, gdbarch *newarch)
{
struct pyuw_gdbarch_data_type *data = pyuw_gdbarch_data.get (newarch);
if (data == nullptr)