forked from Imagelibrary/binutils-gdb
gdb: scope down registers_changed call in inferior::set_arch
inferior::set_arch calls registers_changed, which invalidates all regcaches. It would be enough to invalidate only regcaches of threads belonging to this inferior. Call registers_changed_ptid instead, with the proper process target / ptid. If the inferior does not have a process target, there should be no regcaches for that inferior, so no need to invalidate anything. Change-Id: Id8b5500acb7f373b01a534f16d3a7d028dc0d882 Reviewed-By: John Baldwin <jhb@FreeBSD.org> Approved-By: Andrew Burgess <aburgess@redhat.com>
This commit is contained in:
@@ -180,7 +180,10 @@ inferior::set_arch (gdbarch *arch)
|
|||||||
gdb_assert (gdbarch_initialized_p (arch));
|
gdb_assert (gdbarch_initialized_p (arch));
|
||||||
m_gdbarch = arch;
|
m_gdbarch = arch;
|
||||||
gdb::observers::architecture_changed.notify (this, arch);
|
gdb::observers::architecture_changed.notify (this, arch);
|
||||||
registers_changed ();
|
|
||||||
|
process_stratum_target *proc_target = this->process_target ();
|
||||||
|
if (proc_target != nullptr)
|
||||||
|
registers_changed_ptid (proc_target, ptid_t (this->pid));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
Reference in New Issue
Block a user