aboutsummaryrefslogtreecommitdiff
path: root/gdb/inferior.c
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2023-09-29 14:24:37 -0400
committerSimon Marchi <simon.marchi@efficios.com>2023-10-10 10:44:35 -0400
commit72c4529c85907a5e1e04960ff1362a5a185553a0 (patch)
treeb7828d3aa544952ed62c4ec8833e1d7de1f0de94 /gdb/inferior.c
parent97153a2bbfc59d33c1031526e63b06725862ba6b (diff)
downloadgdb-72c4529c85907a5e1e04960ff1362a5a185553a0.zip
gdb-72c4529c85907a5e1e04960ff1362a5a185553a0.tar.gz
gdb-72c4529c85907a5e1e04960ff1362a5a185553a0.tar.bz2
gdb: move set_target_gdbarch to inferior::set_arch
set_target_gdbarch is basically a setter for the current inferior's arch, that notifies other parts of GDB of the architecture change. Move the code of set_target_gdbarch to the inferior::set_arch method. Add gdbarch_initialized_p, so we can keep the assertion. Change-Id: I276e28eafd4740c94bc5233c81a86c01b4a6ae90 Reviewed-By: John Baldwin <jhb@FreeBSD.org> Approved-By: Andrew Burgess <aburgess@redhat.com>
Diffstat (limited to 'gdb/inferior.c')
-rw-r--r--gdb/inferior.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gdb/inferior.c b/gdb/inferior.c
index 12419da..21795a0 100644
--- a/gdb/inferior.c
+++ b/gdb/inferior.c
@@ -174,6 +174,16 @@ inferior::set_args (gdb::array_view<char * const> args)
}
void
+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);
+ registers_changed ();
+}
+
+void
inferior::add_continuation (std::function<void ()> &&cont)
{
m_continuations.emplace_front (std::move (cont));