aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/arch-utils.c2
-rw-r--r--gdb/inferior.c1
-rw-r--r--gdb/observable.c2
-rw-r--r--gdb/observable.h7
-rw-r--r--gdb/python/py-unwind.c5
5 files changed, 8 insertions, 9 deletions
diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c
index 60a50ea..c64584c 100644
--- a/gdb/arch-utils.c
+++ b/gdb/arch-utils.c
@@ -1479,6 +1479,8 @@ gdbarch_find_by_info (struct gdbarch_info info)
if (gdbarch_debug)
gdbarch_dump (new_gdbarch, gdb_stdlog);
+ gdb::observers::new_architecture.notify (new_gdbarch);
+
return new_gdbarch;
}
diff --git a/gdb/inferior.c b/gdb/inferior.c
index efe57cc..1778723 100644
--- a/gdb/inferior.c
+++ b/gdb/inferior.c
@@ -179,7 +179,6 @@ inferior::set_arch (gdbarch *arch)
gdb_assert (arch != nullptr);
gdb_assert (gdbarch_initialized_p (arch));
m_gdbarch = arch;
- gdb::observers::architecture_changed.notify (this, arch);
process_stratum_target *proc_target = this->process_target ();
if (proc_target != nullptr)
diff --git a/gdb/observable.c b/gdb/observable.c
index 09613b2..f2e65b1 100644
--- a/gdb/observable.c
+++ b/gdb/observable.c
@@ -52,7 +52,7 @@ DEFINE_OBSERVABLE (about_to_proceed);
DEFINE_OBSERVABLE (breakpoint_created);
DEFINE_OBSERVABLE (breakpoint_deleted);
DEFINE_OBSERVABLE (breakpoint_modified);
-DEFINE_OBSERVABLE (architecture_changed);
+DEFINE_OBSERVABLE (new_architecture);
DEFINE_OBSERVABLE (thread_ptid_changed);
DEFINE_OBSERVABLE (inferior_added);
DEFINE_OBSERVABLE (inferior_appeared);
diff --git a/gdb/observable.h b/gdb/observable.h
index acb05e9..a535eed 100644
--- a/gdb/observable.h
+++ b/gdb/observable.h
@@ -153,10 +153,9 @@ extern observable<struct breakpoint */* b */> breakpoint_deleted;
is the modified breakpoint. */
extern observable<struct breakpoint */* b */> breakpoint_modified;
-/* INF's architecture has changed. The argument NEWARCH is a
- pointer to the new architecture. */
-extern observable<inferior */* inf */, struct gdbarch */* newarch */>
- architecture_changed;
+/* GDB has instantiated a new architecture, NEWARCH is a pointer to the new
+ architecture. */
+extern observable<struct gdbarch */* newarch */> new_architecture;
/* 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 f8b142d..ee50c51 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 (inferior *inf, gdbarch *newarch)
+pyuw_on_new_gdbarch (gdbarch *newarch)
{
struct pyuw_gdbarch_data_type *data = pyuw_gdbarch_data.get (newarch);
if (data == nullptr)
@@ -974,8 +974,7 @@ pyuw_on_new_gdbarch (inferior *inf, gdbarch *newarch)
static int CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION
gdbpy_initialize_unwind (void)
{
- gdb::observers::architecture_changed.attach (pyuw_on_new_gdbarch,
- "py-unwind");
+ gdb::observers::new_architecture.attach (pyuw_on_new_gdbarch, "py-unwind");
if (PyType_Ready (&pending_frame_object_type) < 0)
return -1;